Написать программу для Pascal -Ввести натуральное число и определить, какие цифры встречаются несколько раз.
Написать программу для Pascal
-Ввести натуральное число и определить, какие цифры встречаются несколько раз.
Ответ(ы) на вопрос:
Гость
Program nd;
var n, n1,d, d1: longint;
k,a,c: integer;
b: boolean;
begin
write('Введите число: ');
readln(n);
b:= false;
k:=0;
while (n>9) and (not b) do
begin
d:= n mod 10;
n1:= n div 10;
while (n1>0) and (not b) do
begin
d1:= n1 mod 10;
b:= d1 = d;
n1:= n1 div 10;
end;
n:= n div 10;
end;
while n<>0 do
begin
c:=n mod 10;
if c=d1 then k:=k+1;
n:=n div 10;
end;
if b then writeln('в этом числе повторяется ',k+1,' раз цифра ',d1)
else writeln('цифры не повторяются');
end.
Гость
var n,m,k:integer;
mn1,mn2:set of 0..9;
begin
write('n = ');
readln(n);
mn1:=[]; mn2:=[];
m:=n;
while m>0 do
begin
k:=m mod 10;
if k in mn1 then mn2:=mn2+[k];
mn1:=mn1+[k];
m:=m div 10;
end;
if mn2=[]
then writeln('В числе нет повторяющихся цифр')
else begin
write('Повторяются цифры: ');
for k:=0 to 9 do
if k in mn2 then write(k:2);
end;
end.
Пример:
n = 23432
Повторяются цифры: 2 3
Не нашли ответ?
Похожие вопросы