Программа ПРОВЕРЬТЕ!! введите ряд чисел,но как только пользователь вводит -1 программа...

0 голосов
28 просмотров

Программа ПРОВЕРЬТЕ!!
введите ряд чисел,но как только пользователь вводит -1
программа должна сосчитать кол-во четных и нечетных
проверьте почему не работает
Program minodin;
uses crt ;
var a,i,b: integer;
begin
Writeln('введи число');
readln(a);
begin
i:=0;
While (a<-1) and (a>-1) do
Writeln('введи число');
readln(a)
end;
begin
If a mod 2=0 then
i:=i+1
else
b:=b+1;
end;
Writeln(b,' нечетных чисел');
Writeln(i,' четных чисел');
readln;
end.


Информатика (140 баллов) | 28 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

While (a < -1) and (a > -1) do

Тело этого цикла никогда не будет выполнено даже один раз.
Условие требует, чтобы значение a было ОДНОВРЕМЕННО меньше -1 И БОЛЬШЕ -1.

(150k баллов)
0

Program minodin;
uses crt ;
var a,i,b: integer;
begin
Writeln('введи число');
readln(a);
begin
i:=0;
while (a < -1) and (a > -1) do
Writeln('введи число');
readln(a)
end;
begin
If a mod 2=0 then
i:=i+1
else
b:=b+1;
end;
Writeln(b,' нечетных чисел');
Writeln(i,' четных чисел');
readln;
end.

0

так?