2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

Если Вы зададите новый вопрос в существующей теме, то в случае нарушения оформления или других правил форума Ваше сообщение и все ответы на него могут быть удалены без предупреждения.

Не ищите на этом форуме халяву, правила запрещают участникам публиковать готовые решения стандартных учебных задач. Автор вопроса обязан привести свои попытки решения и указать конкретные затруднения.

Обязательно просмотрите тему Правила данного раздела, иначе Ваша тема может быть удалена или перемещена в Карантин, а Вы так и не узнаете, почему.



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Быстрая проверка небольших чисел на простоту на экзамене
Сообщение15.08.2006, 16:12 
Аватара пользователя


13/08/06
107
Приведите пример способа быстрого нахождения простых чисел на определенном отрезке.
Лично я знаю несколько (в основном, все работают по принципу "решета" ), но все они занимают довольно много времени.

 Профиль  
                  
 
 
Сообщение15.08.2006, 16:25 
Модератор
Аватара пользователя


11/01/06
5660
Сначала решето, чтобы отсеять числа с маленькими простыми делителями, а затем перебор отставшихся с каким-нибудь быстрым вероятностным тестом простоты типа Миллера-Рабина.

 Профиль  
                  
 
 
Сообщение15.08.2006, 16:50 
Аватара пользователя


13/08/06
107
Сейчас кое-что почитал про этот тест :!: По-моему, он займет больше времени, чем простое деление всех сомнительных чисел. Конечно, если числа очень большие, то понятно - он полезен, но если числа, ну скажем, трехзначные, то - довольно сложный.

 Профиль  
                  
 
 
Сообщение15.08.2006, 17:56 
Заслуженный участник
Аватара пользователя


17/10/05
3709
:evil:
А с трех- четырехзначными проще всего проверить в таблице (вбитой в программу).

 Профиль  
                  
 
 
Сообщение16.08.2006, 09:28 
Аватара пользователя


13/08/06
107
По какой таблице? На экзамене же ничего не будет! :wink:

 Профиль  
                  
 
 
Сообщение16.08.2006, 09:38 
Супермодератор
Аватара пользователя


29/07/05
8248
Москва
Это на каком, интересно, экзамене, просят найти все простые числа на некотором отрезке?

 Профиль  
                  
 
 
Сообщение16.08.2006, 09:39 
Аватара пользователя


13/08/06
107
вступительный в ГУ-ВШЭ

 Профиль  
                  
 
 
Сообщение16.08.2006, 09:41 
Супермодератор
Аватара пользователя


29/07/05
8248
Москва
И какого типа отрезок (порядок)?

 Профиль  
                  
 
 
Сообщение16.08.2006, 09:45 
Аватара пользователя


13/08/06
107
задание такое: Сколько простых чисел расположено в промежутке (84; 102)
Понятно: задание несложное при наличии времени, но его как раз-таки и не хватает! Я просто хочу найти такой способ, чтобы не вычислять каждое простое число, а сразу находить их количество.

 Профиль  
                  
 
 
Сообщение16.08.2006, 09:56 
Супермодератор
Аватара пользователя


29/07/05
8248
Москва
Ну, это явно методом решета надо делать, даже проще. Выписать все числа из промежутка, можно сразу опускать те, которые явно не простые (сразу виден делитель). Далее, надо использовать простой факт, что если число $x$ имеет делители, то хотя бы один из них не превосходит $\sqrt{x}$. А значит, в данном случае надо проверить только делимость на простые числа до 10.

 Профиль  
                  
 
 
Сообщение16.08.2006, 09:57 
Заслуженный участник


09/02/06
4382
Москва
Здесь подойдет обычный метод решета. Вычеркиваем все чётные, потом делящиеся на три, на пять и на семь. Оставшиеся простые - 83, 89, 97.

 Профиль  
                  
 
 
Сообщение16.08.2006, 09:59 
Аватара пользователя


13/08/06
107
Это именно для данного случая? Как я понял, то если числа находятся в пределах ста, то корень из ста будет 10, значит остается проверить все числа до 10?

 Профиль  
                  
 
 
Сообщение16.08.2006, 10:02 
Заслуженный участник


09/02/06
4382
Москва
AchilleS писал(а):
Это именно для данного случая? Как я понял, то если числа находятся в пределах ста, то корень из ста будет 10, значит остается проверить все числа до 10?

Проверить на простые меньше 10.

 Профиль  
                  
 
 
Сообщение16.08.2006, 10:08 
Аватара пользователя


13/08/06
107
Именно. А другого способа нет. В основном остается проверить 7-9 чисел в аналогичных заданиях - это отнимает около 5-7 минут. А там счет идет чуть ли не на секунды.

 Профиль  
                  
 
 
Сообщение16.08.2006, 10:18 
Заслуженный участник


09/02/06
4382
Москва
Когда числа в пределах 100000, лучшего алгоритма нет. Все мудрёные алгоритмы более экономны при проверке больших чисел на простоту. Конечно для специального вида чисел есть алгоритмы апроверки на простоту специально для таких чисел.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group