Требуется использовать язык Паскаль Даны три целых числа A, B, C. Значения чисел вводятся с клавиатуры. Определить количество нулей среди данных чисел. Результат вывести на экран.
Answers & Comments
vladmor
Var a,b,c,ch,n:integer; begin writeln('введите три числа : '); readln(a,b,c);
n:=0; while (a<>0) do begin ch:=a mod 10; if ch=0 then n:=n+1; a:=a div 10; end; writeln('нулей в первом числе = ',n);
n:=0; while (b<>0) do begin ch:=b mod 10; if ch=0 then n:=n+1; b:=b div 10; end; writeln('нулей во втором числе = ',n);
n:=0; while (c<>0) do begin ch:=c mod 10; if ch=0 then n:=n+1; c:=c div 10; end; writeln('нулей в третьем числе = ',n); end.
0 votes Thanks 1
антагонист
мне кажется, виталий не правильно сформулировал вопрос, но имел в виду он не это, хотя, кто знает?
vladmor
Мне так тоже кажется, и я понимаю, что автор вопроса скорее всего имел в виду каждую цифру каждого числа но формально в задании это не указано.
vladmor
А в задании сказано, цитирую "Определить количество нулей среди данных чисел"
vladmor
Чисел всего 3, нулей может быть 3,2;1 или не быть
Answers & Comments
begin
writeln('введите три числа : ');
readln(a,b,c);
n:=0;
while (a<>0) do begin
ch:=a mod 10;
if ch=0 then n:=n+1;
a:=a div 10;
end;
writeln('нулей в первом числе = ',n);
n:=0;
while (b<>0) do begin
ch:=b mod 10;
if ch=0 then n:=n+1;
b:=b div 10;
end;
writeln('нулей во втором числе = ',n);
n:=0;
while (c<>0) do begin
ch:=c mod 10;
if ch=0 then n:=n+1;
c:=c div 10;
end;
writeln('нулей в третьем числе = ',n);
end.
Verified answer
Если строго по тексту задачи то получится так:var a,b,c,n:integer;
begin
readln(a,b,c);
if a=0 then n:=n+1;
if b=0 then n:=n+1;
if c=0 then n:=n+1;
writeln(n);
end.