Program fury; // название программы const // объявление константы n=10; // сама константа n var //объявление переменных a:array[1..n]of integer; // (сами переменные) объявлен массив а от 1 до n // типа integer ( целые числа от −2 147 483 648 до 2 147 483 647 ) min,max,i,s:integer; // объявлены переменные min , max,a,s - названия , // типа integer begin // начало for i:=1 to n do // цикл который выполняет повторно действие до тех пор, // пока условное значение не станет false (т.е число не превысит n); read(a[i]); //cчитывет значение массива а . [i] в квадратных скобках // означает индекс числа . т.е a[1] - первое число массива min:=1;max:=1; // присваивает переменным min и max значение 1 for i:=2 to n do // уже описывал begin if a[i] min:=i; // оператор сравнения , если условие подходит входит // в цикл if a[i]>a[max]then // оператор сравнения , если условие подходит входит // в цикл max:=i; // присваивает max значение i end; // конец if max>min then / оператор сравнения , если условие подходит входит // в цикл for i:=min to max do // описывал s:=s+a[i] // к переменной s добавляет элемент a[i] else // если условие if не выполнилось for i:=max to min do // s:=s+a[i]; // writeln(' S= ',s); // напечатать на новой строке то чему равно s end.
Не особо знаю паскаль, так что дабы не накосячить с синтаксисом, покажу на примере. Тут всё просто - тебе лишь нужен цикл For и расчет процентов.
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, чтобы было нагляднее.
const // объявление константы
n=10; // сама константа n
var //объявление переменных
a:array[1..n]of integer; // (сами переменные) объявлен массив а от 1 до n // типа integer ( целые числа от −2 147 483 648 до 2 147 483 647 )
min,max,i,s:integer; // объявлены переменные min , max,a,s - названия ,
// типа integer
begin // начало
for i:=1 to n do // цикл который выполняет повторно действие до тех пор, // пока условное значение не станет false (т.е число не превысит n);
read(a[i]); //cчитывет значение массива а . [i] в квадратных скобках // означает индекс числа . т.е a[1] - первое число массива
min:=1;max:=1; // присваивает переменным min и max значение 1
for i:=2 to n do // уже описывал
begin
if a[i] min:=i; // оператор сравнения , если условие подходит входит
// в цикл
if a[i]>a[max]then // оператор сравнения , если условие подходит входит
// в цикл
max:=i; // присваивает max значение i
end; // конец
if max>min then / оператор сравнения , если условие подходит входит
// в цикл
for i:=min to max do // описывал
s:=s+a[i] // к переменной s добавляет элемент a[i]
else // если условие if не выполнилось
for i:=max to min do //
s:=s+a[i]; //
writeln(' S= ',s); // напечатать на новой строке то чему равно s
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, чтобы было нагляднее.