Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Аватар пользователя
Деньги
+4

Решите задачу на с++ пожалуйстааа

Банковские проценты

Вклад в банке составляет xx рублей. Ежегодно он увеличивается на pp процентов, после чего дробная часть от копеек отбрасывается. Определите, через сколько лет вклад составит не менее yy рублей. В задаче запрещено использовать дробные числа.

Входные данные

Программа получает на вход три натуральных числа: xx, pp, yy (x⩽2000x⩽2000, p⩽100p⩽100, y⩽2000y⩽2000).

Выходные данные

Программа должна вывести одно целое число — ответ задачи.

Примеры

Ввод

Вывод

100 10 200

8

1 1 2

100

По дате
По рейтингу
Аватар пользователя
Ученик
22ч

a=12

print('a')

Аватар пользователя
Мастер
22ч

Решение «без дробей» делается на целочисленной арифметике:
достаточно каждый год умножать текущий вклад на (100 + p) и делить на 100.
Остаток от деления отбрасывается автоматически.

#include <iostream>

using namespace std;

int main() {

int x, p, y;

if (!(cin >> x >> p >> y)) return 0;

int years = 0;

while (x < y) {

x = x * (100 + p) / 100; // p процентов и отбрасываем копейки

++years;

}

cout << years;

return 0;

}
Проверка на примерах
100 10 200 → 8
1 1 2 → 100