ПОМОГИИТЕ! Дано натуральное число. Определить, сколько раз в нем встречается цифра равная...

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

ПОМОГИИТЕ! Дано натуральное число. Определить, сколько раз в нем встречается цифра равная последней.


Информатика (155 баллов) | 118 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

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.

(128 баллов)
0

Эмм.. А проще никак?))

0

Получить цифры, составляющие число, можно операцией целочисленного деления на 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;
...

until K <> 0; {пока