На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Сообщение: 2
ссылка на сообщение  Отправлено: 13.11.20 13:04. Заголовок: (№ 2580) (Б.С. Михлин)


здравствуйте!
(№ 2580) (Б.С. Михлин) Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку [586132; 586430], числа, имеющие максимальное количество различных делителей. Найдите минимальное и максимальное из таких чисел. В ответе для каждого из них запишите два числа: количество делителей и наибольший делитель, не равный самому числу.
Спрятать ответ

80 293112
80 293160

мой код

max=0
a=[]
de=[]
for n in range(586132, 586430+1):

divs = []
for d in range(1,n+1): # перебор всех возможных делителей
if n % d == 0: # если нашли делитель d
divs.append(d) # то добавили его в массив
#print(divs)
if len (divs)>max:
max=len(divs)
de.append(divs[max-2])
a.append(n)
print(*a)
print(*de)
print(max)


вывожу все найденные числа для контроля
586132 586140 586146 586152 586170 586224 - это n
293066 293070 293073 293076 293085 293112 - это найденные делители
80

то есть ответ должен быть
80 293066
80 293112

я ошибаюсь?

Спасибо: 0 
ПрофильЦитата Ответить
Новых ответов нет [см. все]





Сообщение: 3
ссылка на сообщение  Отправлено: 13.11.20 13:06. Заголовок: отступы не сохранили..


отступы не сохранились

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 4
ссылка на сообщение  Отправлено: 13.11.20 13:13. Заголовок: https://i.postimg.cc..




Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
ссылка на сообщение  Отправлено: 13.11.20 20:30. Заголовок: Ответ


Здравствуйте, Ирина11! У Вас также как и у меня получилось, что максимальное количество делителей 80. Давайте распечатаем все числа в заданном диапазоне, у которых 80 делителей. Для этого в Вашей программе после цикла формирующего массив divs можно поставить:
if len(divs)==80:
print(divs[::-1])
Я напишу для каждого числа только два старших делителя (1-й делитель это само число):
[586224, 293112, ...]
[586278, 293139, ...]
[586320, 293160, ...] Т.е. таких чисел только три.
Ответ:
80 293112 - для минимального числа 586224,
80 293160 - для максимального числа 586320.

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 5
ссылка на сообщение  Отправлено: 14.11.20 07:30. Заголовок: Спасибо! Можете прис..


Спасибо! Можете прислать свой вариант программы?

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 1
ссылка на сообщение  Отправлено: 14.11.20 18:44. Заголовок: Ответ


mad1,mad2=0,0 # максимальное количество делителей
for n in range(586132, 586430+1):
divs=[d for d in range(n,0,-1) if n%d==0] # "divs"- массив делителей числа n (от n до 1)
if len(divs)>mad1:
mad1=len(divs)
madivs1=divs
if len(divs)>=mad2: # нестрогое неравенство
mad2=len(divs)
madivs2=divs
print(mad1,*madivs1)
print(mad2,*madivs2)
print('Ответ:')
print(mad1,madivs1[1])
print(mad2,madivs2[1])

Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 6
ссылка на сообщение  Отправлено: 14.11.20 21:49. Заголовок: спасибо..


спасибо

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 1440
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет