Для решения задачи на языке программирования Паскаль, необходимо написать программу, которая будет моделировать ежегодное начисление процентов на вклад и отбрасывание дробной части копеек. Мы будем использовать цикл для вычисления суммы вклада каждый год до тех пор, пока она не достигнет или превысит заданное значение. Вот пример программы на Паскале:
program BankDeposit;
var
x, p, y: LongInt;
years: Integer;
current_amount: LongInt;
begin
{ Ввод начальных данных }
ReadLn(x, p, y);
{ Инициализация начальных значений }
current_amount := x;
years := 0;
{ Цикл для расчета суммы вклада по годам }
while current_amount < y do
begin
{ Увеличение вклада на p процентов }
current_amount := current_amount + (current_amount * p div 100);
{ Увеличение счетчика лет }
Inc(years);
end;
{ Вывод количества лет }
WriteLn(years);
end.
Объяснение программы:
Переменные:
x
: начальная сумма вклада в рублях.
p
: процентная ставка, на которую увеличивается вклад ежегодно.
y
: целевая сумма, которую необходимо достичь.
current_amount
: текущая сумма вклада, которая обновляется каждый год.
years
: количество лет, необходимое для достижения или превышения целевой суммы.
Ввод данных:
- Используется
ReadLn
для ввода начальных значений x
, p
и y
.
Цикл while
:
- Продолжается до тех пор, пока
current_amount
не станет равной или больше y
.
- Внутри цикла каждый год увеличиваем
current_amount
на p
процентов. Для этого используем целочисленное деление, чтобы автоматически отбрасывать дробную часть (копейки).
- Увеличиваем счетчик
years
на 1 каждый год.
Вывод результата:
- После выхода из цикла выводим количество лет, необходимое для достижения цели.
Эта программа корректно учитывает условия задачи и использует целочисленное деление для отбрасывания дробной части копеек, что соответствует заданию.