Дано действительное число b>0. Последовательность a1, a2,… Требуется получить все a1, a2,…, меньшие или равные b. - Free Pascal

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

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

Дано действительное число b>0. Последовательность a1, a2,… образована по следующему закону: a1=1, a2=2*a1+1, …, ai+1=2*ai+1 (i=2,3,…). Требуется получить все a1, a2,…, меньшие или равные b.

У меня нет сооброжений, думаю разберусь хотя бы с готовым решением.

Решение задачи: «Дано действительное число b>0. Последовательность a1, a2,… Требуется получить все a1, a2,…, меньшие или равные b.»

textual
Листинг программы
const n=50;
var b,i:longint;
a:array[0..n] of int64;
begin
write('Введите число b: '); readln(b);
for i:=1 to n do begin
a[1]:=1;
a[i]:=2*a[i-1]+1;
if a[i]<=b then writeln('a[',i,']=',a[i]); end;
readln;
end.

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

  1. Объявлены переменные: b, i: longint; a: array[0..n] of int64;
  2. Выводится запрос на ввод числа b.
  3. В цикле for i от 1 до n происходит следующее: a[1] присваивается значение 1; a[i] присваивается значение 2*a[i-1]+1; проверяется условие a[i]<=b, если оно истинно, то выводится значение a[i];
  4. Завершается ввод-вывод данных.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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