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

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

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

Решение

program U11z5;
  var a,b,c:integer;
 begin
     a:=1;
     b:=1;
     while(a <= 15) do
         begin
             b:=a;
             c:=b;
             writeln('vvedite cheloe chislo:');
             readln(a);
                 writeln(a + b + c);
         end;

        writeln('chikl zavershon');
       readln();

end.
           
vedro-compota's picture

b:=a;
c:=b;

то же самое что:

b:=a;
c:=a;

ожидается ли такое поведение?

_____________
матфак вгу и остальная классика =)

program U11z5;
  var a,b,c:integer;


begin
  a:=1;
  b:=1;
  while(a <= 15) do
  begin
     c:=b;
     b:=a;
     writeln('vvedite cheloe chislo:');
     readln(a);
     writeln(a,' ',b,' ', c);
     writeln(a + b + c);
  end;

  writeln('chikl zavershon');
  readln();

end.
vedro-compota's picture

если же введённое число больше 15, то цикл необходимо завершить

-- завершить, без вывода суммы

_____________
матфак вгу и остальная классика =)

program U11z5;
var a,b,c:integer;

begin

  a:=1;
  b:=1;
  while(a <= 15) do
  begin
     c:=b;
     b:=a;
     writeln('vvedite cheloe chislo:');
     readln(a);
     if (a <= 15) then
         writeln(a + b + c);
  end;

  writeln('chikl zavershon');
  readln();

end.