<span>Паскаль:
Program P;
uses crt;
var n,i:integer;
Begin
clrscr;
write(' N=');
readln(n);
i:=1;
while i<=n do
begin
i:=i+1;
if n mod i=0 then
begin
writeln('Наименьший делитель=',i);
end;
end;
end<span>.</span></span>
Не уверен, правильно ли вас понял. Если что, пишите.
567(10) = 5*10^2+6*10^1+7*10^0
94.53(10) = 9*10^1+4*10^0+5*10^(-1)+3*10^(-2)
110.101(2) = 1*2^2+1*2^1+0*2^0+1*2^(-1)+0*2^(-2)+1*2^(-3)
11101(2) = 1*2^4+1*2^3+1*2^2+0*2^1+1*2^0
Есть много разных способов решения этой задачи. Например:
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
В записи введенного числа есть одинаковые цифры
Var x:array[1..10] of integer;
i,n,s:integer;
begin s:=0;
for i:=1 to n do
read(x[i]);
for i:=1 to n do
if x[i] mod2=1 then s:=s+x[i];
writeln('s=,s);
readln;
readln
end.
Думаю так будет.