ПОМОГИИТЕ! Дано натуральное число. Определить, сколько раз в нем встречается цифра равная последней.
Answers & Comments
alena908765
Var a,c,l,w1,w2,w3 : longint;begin readln(a,c); w1:=0; w2:=0; w3:=0; l:=a mod 10; while a>0 do begin if a mod 10=c then w1:=w1+1; if a mod 10=l then w2:=w2+1; if a mod 2=0 then w3:=w3+1; a:=a div 10; end; writeln(w1,' ',w2,' ',w3);end.
alena908765
Получить цифры, составляющие число, можно операцией целочисленного деления на 10 N - исходное число. K - целая часть числа после деления на 10. M - остаток деления. Тогда:
Код:
readln(N); {получим число} K := N; p := 0; {цифр в числе} Chet := 0; {четных цифр} repeat M := K mod 10; {последняя цифра справа} K := K div 10;
p := p + 1; {или ink(p)} {для определения того, что число четное, можно использовать одно неполное условие} if ((M mod 2) = 0) Then Chet := Chet + 1; ...
Answers & Comments
N - исходное число. K - целая часть числа после деления на 10.
M - остаток деления. Тогда:
Код:
readln(N); {получим число}
K := N;
p := 0; {цифр в числе}
Chet := 0; {четных цифр}
repeat
M := K mod 10; {последняя цифра справа}
K := K div 10;
p := p + 1; {или ink(p)}
{для определения того, что число четное, можно использовать одно неполное условие}
if ((M mod 2) = 0) Then Chet := Chet + 1;
...
until K <> 0; {пока