0 / 0 / 0
Регистрация: 02.11.2012
Сообщений: 10
|
||||||
1 | ||||||
Не удается реализовать Решето Эратосфена04.11.2013, 20:55. Показов 1163. Ответов 3
Метки нет (Все метки)
задача: быстро найти простые числа. проблема в том, что в СИ разбираюсь плохо ( так что код может кому-то показаться наивным ). прошу найти ошибки в алгоритме
0
|
04.11.2013, 20:55 | |
Ответы с готовыми решениями:
3
Решето Эратосфена Решето Эратосфена (работает некорректно) Наибольший простой делитель числа и Решето Эратосфена Нахождение первых пятиста простых чисел через решето Эратосфена |
04.11.2013, 21:14 | 2 |
Лера789, в 23-й строке вы используете неопределённую переменную j, на момент первого прохождения по циклу for в j может быть всё что угодно.
Добавлено через 5 минут А здесь вы что имели ввиду? C if (A[L]) j=L*L+L*x; A[j]=0; Только вторая строка должны быть в теле условия или вторая и третья? Мой совет: ВСЕГДА выделяйте тело условия фигурными скобками, даже если блок состоит из одного оператора. C if (A[L]) { j=L*L+L*x; } A[j]=0; C if (A[L]) { j=L*L+L*x; A[j]=0; }
0
|
0 / 0 / 0
Регистрация: 02.11.2012
Сообщений: 10
|
|||||||||||
04.11.2013, 23:46 [ТС] | 3 | ||||||||||
про скобки возьму на заметку ) Добавлено через 2 часа 26 минут код работает но с дефектом по условию надо Вывести числа в порядке возрастания, по одному в строке. Если между M и N включительно нет простых - вывести "Absent"
0
|
05.11.2013, 11:59 | 4 |
Сначала у вас N=30, A[305] (видимо, 305 -- это опечатка), а теперь N=10, A[30], т.е. вы имеете массив из 30-ти элементов, а в циклах проходите по 10-ти элементам.
Зачем вам массив из единиц? Вы собрались искать простые числа в массиве из единиц? C // заполнение массива единицами for ( L; L<=N; L++) A[L]=1; L=5; И почему теперь у вас L=5? P.S. Осталось ещё немного подумать и у вас всё получится, надеюсь.
0
|
05.11.2013, 11:59 | |
05.11.2013, 11:59 | |
Помогаю со студенческими работами здесь
4
Получить все простые числа I, удовлетворяющие неравенству, используя решето Эратосфена Битовое решето Эратосфена: Исправить второй цикл, чтобы уменьшилось время работы программы Решето Эратосфена Решето Эратосфена Решето Эратосфена Решето Эратосфена Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |