Спрогой. вклад составляет x рублей. ежегодно он увеличивается на p процентов, после чего дробная часть копеек отбрасывается. каждый год сумма вклада становится больше. определите, через сколько лет вклад составит не менее y рублей. входные данные программа получает на вход три натуральных числа: x, p, y. выходные данные программа должна вывести одно целое число. написал: program u1; var x,p,y,year: longint; s: real; begin readln (x); readln (p); readln (y); s: =x; year: =0; while s begin while s s: = s+(1+p/100); year: =year+1; end; writeln (year); end. не выводит ответ. найти ошибку. я новичок.
FOR i = 1 TO 100
percents = FIX(x * p / 100) ' здесь у нас есть переменная percents, которой присваиваются округленные функцией fix проценты (насколько я знаю, в паскале аналогичная функция называется Round)
x = x + percents 'тут всё понятно - переменной X присваивается она сама и годовые проценты по вкладу
IF x >= y THEN 'проверяем, не равен или не превысил ли наш вклад ожидаемую сумму
PRINT i 'в цикле For можно не заморачиваться с отслеживанием лет, переменная i сама подсчитает количество итераций-лет
END 'завершаем программу
END IF
NEXT i ' конец цикла
Можно ещё чисто для себя добавить в условие вывод переменной X, чтобы было нагляднее.