Есть много разных способов решения этой задачи. Например:
var n:integer; b:boolean; m:set of 0..9;
begin
write('n='); readln(n);
m:=[];
b:=false;
while (n>0) and not b do
if n mod 10 in m then b:=true else begin m:=m+[n mod 10]; n:=n div 10; end;
if b then writeln('Да') else writeln('Нет');
end.
Пример:
n=123432
<span>Да
Вот ещё вариант:
var n,m,n1,m1,b:integer;
begin
write('n='); readln(n);
b:=0;
while n>0 do
begin
m:=n mod 10;
n:=n div 10;
n1:=n;
while n1>0 do
begin
m1:=n1 mod 10;
if m=m1 then b:=1;
n1:=n1 div 10;
end;
end;
if b=1 then writeln('Да') else writeln('Нет');
end.</span>
Byte - числа в диапазоне от 0 до 255
boolean - логические значения
char - символьный тип
string - строковый тип
integer - вещественные числа
Program kek;
Var a, c:integer;
Begin
c:=0;
a:=1;
While a<>0 do begin
Writeln('Вводите целые числа. Когда закончите - введите "0"');
Readln(a);
If (a>0) and (a mod 10 = 1) then do begin
c:=c+a;
end;
End;
Writeln(c);
End.
Вроде так. Нет возможности проверить.