Різниця по модулю і твір двох чисел

C ++ - це один з найпопулярніших мов програмування. Не важливо, якою мовою програмуєте особисто ви. Але, якщо ви хоча б в загальних рисах не знаєте С ++, то це велика прогалина в вашу освіту, який треба заповнити якомога швидше. Детальніше.
Умова завдання 1.2
завдання 1.2
Дано два цілих числа Х і Т. Якщо вони мають різні знаки, то присвоїти Х значення твори цих чисел, а Т - значення їх різниці по модулю. Якщо числа мають однакові знаки, то присвоїти Х значення різниці по модулю вихідних чисел, а Т - значення твори цих чисел. Нові значення Х і Т вивести на екран.
Завдання теж нескладна. "Непонятки" можуть виникнути тільки в тому випадку, якщо ви забули, що таке різниця по модулю (сподіваюся, що такий твір двох цілих чисел, ви все-таки пам'ятайте))).
Різниця по модулю двох чисел
Різниця по модулю двох цілих чисел (хоча не обов'язково цілих - це не має значення, просто в нашій задачі числа цілі) - це, кажучи по простому, коли підсумком обчислення є модуль різниці двох чисел.
Тобто спочатку виконується операція вирахування одного числа з іншого. А потім обчислюється модуль результату цієї операції.
Математично це можна записати так:
Якщо хто забув, що таке модуль або як його обчислити в Паскалі, то див. Тут.
Алгоритм визначення знаків двох чисел
Рішення завдання в цілому досить просте. Труднощі у новачків може викликати лише визначення знаків двох чисел. Тобто треба відповісти на питання: як дізнатися, мають числа однакові знаки або різні.
Спочатку напрошується почергове порівняння чисел з нулем. Це допустимо. Але вихідний код буде досить великим. Тому більш правильно використовувати такий алгоритм:
- Помножити числа один на одного
- Якщо результат менше нуля, значить у чисел різні знаки
- Якщо результат дорівнює нулю або більше нуля, то у чисел однакові знаки
Цей алгоритм я виконав у вигляді окремої функції. А сама програма вийшла такою, як показано в прикладах на Паскалі і С ++ нижче.
Рішення завдання 1.2 на Паскалі
Рішення завдання 1.2 на С ++