Изменить эту программу так, чтобы для вычисления процентов она использовала только целые числа - C (СИ)
Формулировка задачи:
Товарищи, дан пример с книги Дейтелов по расчету суммы денег на конец года на протяжении 10 лет. вот код:
а в конце темы есть задача в которой предлагается изменить эту программу так чтобы для вычисления процентов она использовала только целые числа. подскажите что нибудь или дайте наводку. спасибо
#include <stdio.h> #include<math.h> main() { int year; double amount, principal = 1000.0, rate = .05; printf("%4s%21s\n", "Year", "Amount on deposit"); for(year = 1; year <= 10; year++) { amount = principal * pow(1.0 + rate, year); printf("%4d%21.2f\n", year, amount); } }
Решение задачи: «Изменить эту программу так, чтобы для вычисления процентов она использовала только целые числа»
textual
Листинг программы
int pwr(int num, int pow) { return !pow ? 1 : num * pwr(num, pow - 1); } amount = principal * pow(105, year);
Объяснение кода листинга программы
- В функции pwr() реализуется рекурсивный алгоритм возведения в степень.
- Если значение переменной pow равно 0, то функция возвращает 1.
- В противном случае функция вызывает саму себя, передавая в качестве аргументов число num и значение pow уменьшенное на единицу.
- Результат рекурсивного вызова функции умножается на num.
- Функция заканчивает работу когда значение pow становится равным 0.
- В основной программе переменной amount присваивается результат вызова функции pwr(), в которую передаются значения principal и year.
- year — это количество лет, в течение которых будут начисляться проценты.
- principal — это сумма денежных средств, которая будет увеличена на проценты.
- pow(105, year) — это выражение, в котором функция возведения в степень применяется к числу 105 и переменной year.
- Результат этого выражения используется как аргумент для функции pwr().
- В результате работы программы на экран будет выведено значение переменной amount.
- pow() — это функция возведения в степень.
- 105 - это основание степени.
- year — это показатель степени.
- В данном случае функция pow() применяется к числу 105 и переменной year.
- Результат этого выражения используется в алгоритме вычисления процентов.
- Для вычисления процентов используется только целое число.
- Проценты начисляются ежегодно.
- Для вычисления процентов необходимо знать основание степени.
- В данном случае основание степени равно 105.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д