Вывести заданную последовательность - Pascal ABC (12810)
Формулировка задачи:
Последовательность x1,x2,… образована по заданному ниже закону. Распечатать x1,x2,…,x20. Постарайтесь обойтись без массивов – в задаче нет острой необходимости сохранения всех значений xi.
x1=x2=x3=1; xi=(i+3)(xi-1-1)+(i+4)xi-3, i=4,5,…
Решение задачи: «Вывести заданную последовательность»
textual
Листинг программы
const n=20; var x1,x2,x3,x:real; i:integer; begin x1:=1; x2:=1; x3:=1; for i:=1 to 3 do write(1,' '); for i:=4 to n do begin x:=(i+3)*(x3-1)+(i+4)*x1; write(x:0:0,' '); x1:=x2; x2:=x3; x3:=x; end; end.
Объяснение кода листинга программы
- Переменная n инициализируется значением 20.
- Переменные x1, x2 и x3 инициализируются значением 1.
- Переменная i инициализируется значением 1.
- Три раза выводится последовательность 1, пробел.
- Цикл for начинается с i=4 и продолжается до i<n.
- Внутри цикла переменная x вычисляется как (i+3)(x3-1)+(i+4)x1.
- Выводится значение переменной x с нулевыми десятичными знаками и пробелом.
- Переменные x1, x2 и x3 обновляются, чтобы отразить последнюю итерацию цикла.
- Цикл for завершается.
- Код завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д