Действуй по примеру:
Пример: десятичное целое число 48 переведём в несимметричное троичное целое число:
число = 48 делим на 3, частное = 16, остаток a0 = 0
частное = 16 делим на 3, частное = 5, остаток a1 = 1
частное = 5 делим на 3, частное = 1, остаток a2 = 2
частное = 1 делим на 3, частное = 0, остаток a3 = 1
Частное не больше нуля, деление закончено.
<span>Теперь, записав все остатки от последнего к первому слева направо, получим результат 48 = (a3a2a1a0) = 1210 (4 цифры)</span>
В программе алгоритм неверный, так дубликаты не найти.
Поэтому программа в основном переделана.
var
n:integer;
a:array[0..9] of boolean;
d,i:byte;
r:boolean;
begin
Writeln('Введите натуральное число'); Readln(n);
for i:=0 to 9 do a[i]:=False;
r:=False;
while n>0 do begin
d:=n mod 10;
if a[d] then begin
r:=True;
break
end
else a[d]:=True;
n:=n div 10
end;
if r then Writeln('да')
else Writeln('нет')
end.
7 же. Прибавить 2 к 5 не можешь в уме, что ли?
Dpi (dots per inch<span>) — количество точек на дюйм</span>