** вход программы поступает натуральное число . Требуется определить сумму цифр в...

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

На вход программы поступает натуральное число . Требуется определить сумму цифр в десятичной записи этого числа , которые кратны 3(считается , что 0 кратно любому числу). Если в числе нет цифр , кратных 3, требуется на экран вывести "NO". Прошу написать через цикл while


Информатика (161 баллов) | 50 просмотров
Дано ответов: 2
0 голосов

var a,b,N:integer;

begin

readln(a);

while a>0 do

begin

   b:=a mod 10;

   if b div 3 = 0 then

   N:=N+B;

END

IF N:=0 THEN

   WRITELN('NO');

ELSE

WRITELN(N);

END.

(268 баллов)
0 голосов

var a,s:integer;

begin

readln(a);

while a>0 do

begin

if a mod 10 mod 3 = 0 then s:=s+a mod 10;

a:=a div 10

end;

if s=0 then writeln('NO')

else writeln(s);

end.

(1.7k баллов)