Как переделать программу, чтобы внешний цикл был repeat.until, а цикл for вложенным? Паскаль - Pascal ABC
Формулировка задачи:
Решение задачи: «Как переделать программу, чтобы внешний цикл был repeat.until, а цикл for вложенным? Паскаль»
textual
Листинг программы
var sv,sz,fact:real;
i,j,zn:integer;
begin
sz:=0;
j:=4;
repeat
sv:=0;
fact:=6;
zn:=-1;
for i:=1 to 10 do
begin
sv:=sv+zn*sqrt(i)*ln(x+1)/(sqrt(j)+fact);
fact:=fact*(i+3);
zn:=-zn;
end;
sz := sz + sv;
writeln(sv:10:6, sz:14:6);
j:=j+1;
until j>12;
writeln('zagalna suma=', sz:11:6);
end.
Объяснение кода листинга программы
В данном коде представлен алгоритм вычисления суммы двух последовательностей чисел.
- Переменные:
- sz - сумма чисел
- fact - факториал числа
- i - номер текущего элемента внешней последовательности
- j - номер текущего элемента внутренней последовательности
- zn - значение текущего элемента внутренней последовательности
- sv - значение текущего элемента внешней последовательности
- Внешний цикл repeat до тех пор, пока j больше 12. Внутри цикла происходит:
- Инициализация переменных fact, zn, sv.
- Вычисление значения sv как суммы значений из внутренней последовательности.
- Увеличение значения fact за счет умножения на факториал числа i.
- Инверсия значения zn.
- Вычисление значения sv как суммы значений из внутренней последовательности.
- Добавление значения sv к сумме sz.
- После завершения внешнего цикла выводится значение суммы sz.
- Код написан на языке Pascal ABC.