Урок 11 задача 5

Урок 11 задача 5

Модификация одной из пред. задач: Пользователь вводит целые числа. Пока он не введёт число большее 15, в ответ на каждое введённое число выводите сумму этого числа и двух предыдущих введённых им чисел (предыдущего и пред-предыдущего), если же введённое число больше 15, то цикл необходимо завершить.

В первом витке цикла все "предыдущие" числа можно считать единицами.

Решение:

var a,b,c:integer;
begin
  a:=1; // начальное значение вводимой переменной
  b:=1;
  c:=1;
  while a<=15 do
  begin
    c:=b;
    b:=a;  //присваиваем текущее число предыдущему
    writeln('vvedite chislo');
    readln(a);    //вводим число
    if a<=15 then
      writeln('Otvet = ',a+b+c) //складываем с предыдущим
  end;
  writeln('Poka');
  readln();
end.

Консоль:

vvedite chislo
1
Otvet = 3
vvedite chislo
2
Otvet = 4
vvedite chislo
3
Otvet = 6
vvedite chislo
4
Otvet = 9
vvedite chislo
16
Poka