Задача 6 Урок 11 While
Primary tabs
{Пользователь вводит целые числа. Пока он не введёт число большее 15,
в ответ на каждое введённое число выводите сумму этого числа и пред-предыдущего введённого им числа, если это число чётное, иначе просто запрашивать новое число.
Если же введённое число больше 15, то цикл необходимо завершить.}
var a,b,c: integer;
begin
a:=0; b:=0; c:=0;
while (a < 15) do
begin
c := b; // пред-предидущее
b := a; // предидущее
if (a mod 2) = 0 then
begin
writeln('write integer num:');
readln(a); // текущее
writeln(a ,' (curent) + ', c,' (pre-previous) nums summ = ' , a + c)
end
else
begin
writeln('write another integer num:'); // если нечётное
readln(a);
if (a mod 2) = 0 then
writeln(a ,' (curent) + ', c,' (pre-previous) nums summ = ' , a + c)
end;
end;
writeln('over');
readln();
end. - Log in to post comments
- 1866 reads
vedro-compota
Sat, 05/01/2021 - 12:20
Permalink
writeln('write integer num:')
writeln('write integer num:'); readln(a); // текущее-- дублирование кода, исправьте
_____________
матфак вгу и остальная классика =)
i_love_cookies
Wed, 05/05/2021 - 14:20
Permalink
избавился от дублирования кода
var a,b,c: integer; begin a:=0; b:=0; c:=0; while (a < 15) do begin c := b; // пред-предидущее b := a; // предидущее writeln('write integer num:'); readln(a); // текущее if (a mod 2) = 0 then writeln(a ,' (curent) + ', c,' (pre-previous) summ = ' , a + c) end; writeln('over'); readln(); end.