Найдите наименьшее натуральное число, у которого ровно 36 делителей (включая 1 и само число 36). Например, у числа 6 четыре делителя: 1, 2, 3, 6. В качестве ответа укажите одно натуральное число.
Найдите наименьшее натуральное число, у которого ровно 36 делителей (включая 1 и само число 36). Например, у числа 6 четыре делителя: 1, 2, 3, 6. В качестве ответа укажите одно натуральное число.
Ответ(ы) на вопрос:
Гость
var p,k,i:integer; f:boolean;
begin
f:=false;
p:=36;
while not f do
begin
p:=p+1;
k:=2;
for i:=2 to p div 2 do
if p mod i = 0 then k:=k+1;
f:=k=36;
end;
writeln(p);
end.
Результат:
1260
Гость
оптимизированно относительно предыдущего ответа.
Так и не понятно причем тут 36 в качестве делителя, потому не использовалось
var
p, k, i: integer;
begin
p := 2;
while true do
begin
k := 2;
for i := 2 to Floor(sqrt(p)) do
if p mod i = 0 then
if p div i = i then {случай полного квадрата}
k := k + 1
else
k := k + 2;
if k = 36 then break;
p := p + 1;
end;
writeln(p);
end.
Не нашли ответ?
Похожие вопросы