Условие задачи: Вводят числа (кол-во чисел не более 1000,а числа не более 30000),в конце программа должна вывести число-кол-во введенных чесел, которые меньше 500 и кратные 3,если вводят ноль, то программа должна остановиться, показать результат. ноль как число не засчитывается. Вот мое решение: var Dat: array[1..1000] of integer; k, number:integer; begin number:=0; for k:=1 to 1000 do begin readln(Dat[k]); if(Dat[k]>30000) then writeln ('не верное число') else begin if(Dat[k]<500)and(Dat[k] mod 3<>0)and(Dat[k]<>0) then number:=number+1; if(Dat[k]=0) then break; end; end; writeln(number); end.
Вот мое решение:
var
Dat: array[1..1000] of integer;
k, number:integer;
begin
number:=0;
for k:=1 to 1000 do begin
readln(Dat[k]);
if(Dat[k]>30000) then writeln ('не верное число')
else begin
if(Dat[k]<500)and(Dat[k] mod 3<>0)and(Dat[k]<>0) then
number:=number+1;
if(Dat[k]=0) then break;
end;
end;
writeln(number);
end.
но на выходе все время дает 1.что делать?