Task 27. Операции вычитания, умножения и деления через операцию сложения
UniLecsЗадача: реализовать операции вычитания, умножения и деления через операцию сложения
Идея:
- Вычитание: операция (a – b) = a + (-1) * b. Так как мы не можем использовать умножение, напишем отдельную функцию для реализациия отрицания. Отрицательное значение числа Х получается суммированием Х раз числа -1.
- Умножение: для того, чтобы перемножить a*b, нужно сложить значение а b раз. Если одно из чисел отрицательное, нам также надо учесть знак.
- Деление: div = a/b. Переопределим задачу: найти div, если a=b*div. По сути количество значений b, чтобы получить а и будет искомым значением div.
Реализация:
https://gist.github.com/unilecs/7654ca5aaec3f23772ed151d2aa97a43