найдите ошибку в программе. она нужна, чтобы в последовательности чисел, находить четные числа, кратные трем. и выдавать количество этих чисел
program abc;
var col, a : integer;
BEGIN
col:=0;
readln (a);
if ((a<>0) and (a mod 3=0) and (a mod 2 =0)) then
col:=col+1;
if a<>0 then
begin
while a<>0 do
readln (a);
if (a mod 3=0) and (a mod 2 =0) then
col:=col+1;
end;
writeln ('количество ',col);
end.
Answers & Comments
Verified answer
Программа рабочая, скорее всего ты просто вводил элементы в строчку, а у тебя стоит в чтении переход на новую строку(окончание LN), и паскаль просто не видел никакие числа, кроме первого.И очень муторный и непонятный код, я переписал немножко:
var
col, a: integer;
begin
col := 0;Read(a);
while a <> 0 do
begin
read(a);
if (a mod 3 = 0) and (a mod 2 = 0) then
col := col + 1;
end;
writeln('количество ', col);
end.
Пример:
6 12 9 36 0
количество 3