С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/92: Рейтинг темы: голосов - 92, средняя оценка - 4.82
17 / 17 / 5
Регистрация: 27.11.2011
Сообщений: 141

Разложение на простые

24.11.2012, 10:50. Показов 17079. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано натуральное число N1. Выведите все его простые натуральные делители с учетом кратности. Алгоритм должен иметь сложность O(n^1/2) .
Где- то ошибка:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
def IsPrime(n):
    for i in range(2,int(n ** 0.5)+1):
        if n % i == 0:
            return False
    return True
 
a = input()
i = 2
while i < a+1:
    ch1 = i
    while IsPrime(ch1) == True and a % ch1 == 0:
        a /= ch1
        print ch1
    i += 1
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.11.2012, 10:50
Ответы с готовыми решениями:

Разложение на простые
Разложение на простые Требуется разложить целое число N на простые множители с учётом их степени и вывести результат в порядке...

Разложение на простые ++ на Python !
import math number=int(input()) for i in range(2, int(math.sqrt(number)) + 1): # обычно делитель не будет больше корня ...

Разложение на простые множители
Требуется разложить целое число N на простые множители и вывести результат в порядке возрастания множителей с указанием степени. ...

6
 Аватар для AciD
22 / 22 / 19
Регистрация: 25.10.2011
Сообщений: 122
24.11.2012, 12:26
Python
1
2
3
4
5
6
res=[]
a=int(input())
for i in range(2,int(a**0.5)+2,1):
  if IsPrime(i)==1 and a%i==0:
  res.append(i)
print(res)
1
17 / 17 / 5
Регистрация: 27.11.2011
Сообщений: 141
24.11.2012, 13:34  [ТС]
вот пример, по которому это должно работать 132 - 2 2 3 11, по данному так не получается
0
 Аватар для AciD
22 / 22 / 19
Регистрация: 25.10.2011
Сообщений: 122
24.11.2012, 14:51
Наверное вы что-то перепутали, потому что быстрого и эффективного разложения на простые множители в природе не существует... (я не прав?)
1
17 / 17 / 5
Регистрация: 27.11.2011
Сообщений: 141
24.11.2012, 16:13  [ТС]
в задание я написал, с учётом кратности, вы не находите?
0
 Аватар для AciD
22 / 22 / 19
Регистрация: 25.10.2011
Сообщений: 122
25.11.2012, 04:37
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def IsPrime(n):
    for i in range(2,int(n ** 0.5)+1):
        if n % i == 0:
            return False
    return True
a=int(input())
res=[]
i=2
while IsPrime(a)==0:
    if IsPrime(i)==1 and a%i==0:
        a=int(a/i)
        res.append(i)
        i=2
    i+=1
res.append(a)
print(sorted(res))
1
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
26.11.2012, 02:00
Цитата Сообщение от maniac0192 Посмотреть сообщение
Где- то ошибка:
надо прибавлять по два
3 5 7 9 ...
а двойку проверять отдельно
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.11.2012, 02:00
Помогаю со студенческими работами здесь

Разложение на простые множители
Разложение на простые Требуется разложить целое число N на простые множители с учётом их степени и вывести результат в порядке...

Разложение на простые множители
Разложение на простые множители Требуется разложить целое число N на простые множители с учётом их степени и вывести результат в порядке...

Разложение на простые множители (Время: 1 сек. Память: 16 Мб Сложность: 27%)
Требуется вывести представление целого числа N в виде произведения простых чисел. Входные данные Входной файл INPUT.TXT содержит...

Разложение на простые множители (сириус)
Не могу решить казалось бы простую задачу, помогите пожалуйста с решением. (знаю что такая тема была на форуме, но от туда ничего не...

Разложение на простые множители
Разложение на простые множители


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru