Построить последовательность целых чисел по закону - Pascal

Узнай цену своей работы

Формулировка задачи:

Построить последовательность целых чисел a1, ..., a30, где a1=1, a2=1, a[i]=a[ i/2 ]+ a[i – 2] (i=3, ..., 30).

Решение задачи: «Построить последовательность целых чисел по закону»

textual
Листинг программы
const n=30;
var a:array[1..n] of integer;
    i:byte;
begin
writeln('Последовательность A');
for i:=1 to n do
 begin
  if i<3 then a[i]:=1
  else a[i]:=a[i div 2]+a[i-2];
  write(a[i]:4)
 end;
end.

Объяснение кода листинга программы

В данном коде мы создаем переменную n со значением 30. Затем мы создаем переменную a, которая является массивом целых чисел от 1 до n. Далее у нас есть переменная i, которая является байтом (в данном случае это просто счетчик). Затем мы выводим на экран последовательность A. Для этого мы используем цикл for, который выполняется от 1 до n. Внутри цикла мы проверяем значение переменной i. Если i меньше 3, то присваиваем элементу массива a[i] значение 1. В противном случае, если i делится на 2 и i-2 также делится на 2, то присваиваем элементу массива a[i] значение суммы элементов массива a[i-2] и a[i-1]. Затем мы выводим на экран значение элемента массива a[i] с помощью функции write. Таким образом, данный код создает последовательность целых чисел от 1 до 30, где каждый элемент, кроме первых трех, равен сумме двух предыдущих элементов.

Оцени полезность:

15   голосов , оценка 4.333 из 5
Похожие ответы