Пусть дано N чисел,введенных с клавиатуры. Найти количество только тех из них,которые...

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

Пусть дано N чисел,введенных с клавиатуры. Найти количество только тех из них,которые кратны 2 и оканчиваются на 8.
Программа в паскале(с помощью цикла)


Информатика Начинающий (124 баллов)
Дано ответов: 2
0 голосов
БОГ (314k баллов)
 
Правильный ответ

Var   a: array [1..100] of integer;   
k,n,i:integer;
begin
k:=0;   
write ('Введите размер: ');    
readln(n);    
for i:=1 to n do      
     readln (a[i]);    
for i:=1 to n do    
begin     
     If a[i] mod 10=8 then      
          k:=k+1   
end;   
write (k);
end.

оставил комментарий БОГ (314k баллов)

Просто If (a[i]mod 2=0) then

оставил комментарий БОГ (314k баллов)

Так ты имеешь в виду?

оставил комментарий Кандидат Наук (34.0k баллов)

И так и так верно, просто можно короче ))

оставил комментарий Кандидат Наук (34.0k баллов)

Нет, if a mod 10 = 8, если делится на 2, ещё не значит, что кончается на восемь

оставил комментарий Кандидат Наук (34.0k баллов)

Но если кончается на 8, то точно делится на 2

оставил комментарий БОГ (314k баллов)

Ок

оставил комментарий Начинающий (124 баллов)

там не хватило ещё mod a 2=0

оставил комментарий БОГ (314k баллов)

Можно и без него

оставил комментарий БОГ (314k баллов)

Так 8 уже четное число

0 голосов
Кандидат Наук (34.0k баллов)

Var
i,N,A,k:integer;
Begin
k:=0;
Write('N = ');Read(N);
For i:= 1 to N do
    Begin
    Read(A);
    if (A mod 10 = 8) then k:=k+1;
    End;
WriteLn(k);
End.

...