0 / 0 / 0
Регистрация: 14.03.2017
Сообщений: 67
|
||||||
1 | ||||||
Наибольший простой делитель числа26.10.2018, 12:05. Показов 19003. Ответов 6
Метки нет (Все метки)
Всем привет! Есть программа для вычисление наибольшего простого делителя некоторого числа:
Сижу 2 дня и не понимаю что не так. Подскажите пожалуйста в чем ошибка. Заранее спасибо)
0
|
26.10.2018, 12:05 | |
Ответы с готовыми решениями:
6
Наибольший простой делитель числа и Решето Эратосфена Наибольший Простой Делитель решетом эратосфена Даны натуральные числа X и Y. Вычислить их наибольший общий делитель Наибольший общий делитель |
5118 / 4558 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
|
|
26.10.2018, 12:20 | 2 |
TheSava, Вам не кажется, что не стоит пытаться выделять в стеке 14.3 Гб?...
1
|
0 / 0 / 0
Регистрация: 14.03.2017
Сообщений: 67
|
|
26.10.2018, 14:25 [ТС] | 3 |
liv, Спасибо! Понял(((
0
|
Диссидент
27709 / 17325 / 3811
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
27.10.2018, 10:59 | 4 |
В самом деле эти страшные гигабайты и не будут выделяться. Выделится 8*n (mod 263) или что-то вроде того, но по модулю
TheSava, не можете в двух словах описать свой алгоритм? Неужели строите решето Эратосфена? Хочу сказать, что существует значительно более компактный способ решения задачи. Без всяких массивов вообще. И довольно простой.
1
|
0 / 0 / 0
Регистрация: 14.03.2017
Сообщений: 67
|
|
28.10.2018, 14:54 [ТС] | 5 |
Байт, К сожалению в задаче надо использовать решето Эратосфена( И я вот пытаюсь понять как это сделать))
0
|
Диссидент
27709 / 17325 / 3811
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
28.10.2018, 15:23 | 6 |
Тогда надо его организовать правильно. На фига делать массив long long? Что ты там собираешься хранить? Номер элемента? Но он и так известен В самом деле там должна храниться одна логическая переменная со значениями false - true. То есть достаточно одного бита.
Если тебе пока трудно работать с битовыми массивами, возьми байтовый. char arr[n-1]; Но лучше с битовым. Тогда в один байт влезает информация о 8-ми числах. - выигрыш в 8 раз! И это не очень сложно, уверяю. А если слегка поднатужиться, то можно догадаться как в одном байте (8 бит) хранить информацию о 30 числах. Выигрыш еще почти в 4 раза. Но это уже тема для другого разговора... Добавлено через 3 минуты Может быть найдешь что-то полезное для себя из этого объемного, но насыщенного информацией, топика Быстрая проверка натурального числа на простоту
0
|
0 / 0 / 0
Регистрация: 14.03.2017
Сообщений: 67
|
|
28.10.2018, 17:26 [ТС] | 7 |
Байт, Да, я как раз сейчас в процессе такого способа
0
|
28.10.2018, 17:26 | |
28.10.2018, 17:26 | |
Помогаю со студенческими работами здесь
7
Найти наибольший общий делитель Найти наибольший общий делитель Найти наибольший общий делитель 8 чисел Найти наибольший общий делитель трех чисел Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |