Найдите число, меньшее 1000, имеющее наибольшее количество различных делителей. Python.

программирование программы математика python


Примечание:
k=0
for i in range(1,1000):
for j in range(1,1000):
if i%j==0:
k=k+1
raw_input()
Вот болванка. Kак наибольшее k найти?

Примечание:
Черт, посмотри где ошибка, пожалуйста?
max=0
otvet=1
for i in range(1,1000):
for j in range(1,1000):
if i%j==0:
k=k+1
if k>=max:
max=k
otvet=j
else:
print max, otvet
raw_input()

Примечание:
Большое спасибо, Черт. Все получилось. Только вместо j, i в otvet
Ответы:
Найдите все небольшие простые (решето Эратосфена), затем пермножайте их начиная с двух, как только получаете больше 1000, откатывайте последнее изменение и это будет ответом.
добавь перед началом int k_max=0,otvet=1;
и в цикле с i (после цикла с j), сравнивай k с k_max и обновляй otvet и собственно k_max.
Забыл, k=0 должно быть не выше цикла, а сразу после фора.
компилировать сейчас нечем (да и Питон я не знаю), но вроде так:
max=0
otvet=1
for i in range(1,1000):
       k=0
       for j in range(1,1000):
         if i%j==0:
            k=k+1
       if k>=max:
         max=k
         otvet=j
print max, otvet


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.