uses math;
var m,n,i,d,l,r,dma,ma:longint;
begin
repeat
write('Nhap so N: ');readln(n);
if n < 1 then writeln('Nhap so N: (Yeu cau nhap lai so N)');
until n>0;
write('Cac uoc cua N la: ');
for i := 1 to n do
if n mod i = 0 then
  begin
    write(i,';');
    inc(d);
  end; writeln;
writeln('So uoc cua N la: ',d);
m :=1;ma:=-maxlongint;
for l := 2 to n do
 begin
    dma:=0;
    for r := 1 to i do
      if (l mod r = 0) then dma := dma + 1;
    if dma > ma then begin ma :=max(ma,dma); m := l; end;
 end;
writeln('So M la: ',m);
readln;
end.