Задача 2 Урок 11 While

11. While

{Пользователь вводит целые числа. Пока он не введёт число большее 15, в ответ на каждое введённое число выводите сумму этого числа и предыдущего введённого им числа, если же введённое число больше 15, то цикл необходимо завершить. Первое введенное пользователем число можно сложить с единицей.}

program ab;
var a,b: integer;
begin
  a := 1;
  b := 0;
  while (a <= 15) do
  begin
    writeln('vvedite celoe chislo:');
    readln(a);
    writeln(a + b);
    b:=a;
  end;
  writeln('Poka!');
  readln();
end.    
vedro-compota's picture

Если пользователь вводит с первого раза 17, то цикл должен завершится и сумма выводится не должна (добавил уточнение в условие).

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

program ab;
var a,b: integer;
begin
  a := 1;
  b := 0;
  while (a <= 15) do
  begin
    writeln('write integer num:');
    readln(a);
    if (a <= 15) then
      begin
        writeln('summ ', a + b);
        b:=a;
      end
    else
       break;
  end;
  writeln('end');
  readln();
end.
vedro-compota's picture

Добавьте альтернативное решение без использования

if (a <= 15) then

внутри цикла

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