|
Простые числа, где можно найти ряд |
|
|
|
Oct 2 2006, 13:21
|

山伏
    
Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294

|
Цитата(ig_z @ Oct 2 2006, 15:21)  Подскажите, где можно найти ряд простых чисел. От 1000 и дальше. Поиском найти не смог.  Вы бы еще формулу попросили... Код ////////////////////////////////////////////////////////////////////////////// // // Finding prime numbers // (c) Johna Smith, 1996 // // Method description: // We take a number and try to divide it. If we can divide it // without remainder - this is not prime number. // We can take into account only odd numbers, because we can // divide all even number by 2. Also we can store all prime // numbers that are already found in an array and try to divide // all new numbers only by numbers from this array. // If we want to find all prime numbers less than N the size of // the array should be sqrt(N)/2 // //////////////////////////////////////////////////////////////////////////////
#include <stdio.h>
#define N 160 // so we can find all prime numbers that are less than 100000 #define M 25 // check all numbers less than 250
int Simple[N]; int k=0; enum {yes,no} simple;
void main(void) { // it's easy: 2 and 3 are prime if (M>=2) printf("2\n"); // 2 is simple 'cause we can divide it only by itself and 1 Simple[k++]=2; if (M>=3) printf("3\n"); Simple[k++]=3;
// but what we can say about other numbers: for(int i=5; i<=M; i+=2) { simple=yes; for(int j=0; j<k; j++) { if (Simple[j]*Simple[j]>i) break; // other Simple[j] is too big for i if ((i%Simple[j])==0) simple=no; // there's no remainder - not prime } if (simple==yes) { printf("%d\n",i); Simple[k++]=i; } } } Это я копирнул с "винграда", раздел "алгоритмы". P.S.: Кстати, о формуле простых чисел (  ), вот человек получил кое какие аппроксимации ряда (я сам не проверял, т.к. довольно холоден к фундаментальной математике). Но если надумаете, как их применить в прикладных задачах - Вам и карты в руки...
--------------------
Нас помнят пока мы мешаем другим... //-------------------------------------------------------- Хороший блатной - мертвый... //-------------------------------------------------------- Нет старик, это те дроиды которых я ищу...
|
|
|
|
|
Oct 2 2006, 13:53
|
Местный
  
Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551

|
Цитата(DRUID3 @ Oct 2 2006, 16:21)  Цитата(ig_z @ Oct 2 2006, 15:21)  Подскажите, где можно найти ряд простых чисел. От 1000 и дальше. Поиском найти не смог.  Вы бы еще формулу попросили... Спасибо за ответ. Я еще более холоден к данной теме. Просто просьба со стороны. Что касается формульного расчета, то действительно гарантировано простое число на выходе. Но, если я не ошибаюсь, нет гарантии, что будет рассчитан весь ряд без пропусков. Вроде я слышал, что раньше публиковали полные ряды, получаемые тупым перебором. Вот такое бы найти.
|
|
|
|
|
Oct 2 2006, 18:17
|
Местный
  
Группа: Свой
Сообщений: 228
Регистрация: 22-10-05
Из: Саратов
Пользователь №: 9 960

|
Цитата  дык кто Вам мешает копирнуть ряд сюда и помочь человеку? Лови! В файле в две колонки номер простого числа и само число. Первым простым числом считается 2. Первые 100000 чисел.
primes.zip ( 286.71 килобайт )
Кол-во скачиваний: 220
|
|
|
|
|
Oct 27 2006, 18:44
|
Частый гость
 
Группа: Новичок
Сообщений: 136
Регистрация: 18-08-06
Из: Novosibirsk
Пользователь №: 19 655

|
Цитата(Krys @ Oct 27 2006, 15:08)  Извиняюсь, если офтопик, но ещё в школе на олимпиаде по математике у нас была такая задачка: какова сумма всех простых чисел до 1000? Притом время было ограниченное. Я так до сих пор и не понял, в чём тут был подвох (простота)? Я должен был перебирать все числа до 1000? Потом тупо их просуммировать? Этих чисел судя по выданной тут таблице сотня штук - замучаешься вычислять... Кто знает отгадку? Дык, сначала все просуммировать, а потом те, которые не простые вычесть. Причём пройтись (решетом Эратосфена) придётся только по простым числам, меньше корня из 1000, т.е. до 31.
|
|
|
|
|
Oct 31 2006, 07:55
|
Частый гость
 
Группа: Validating
Сообщений: 107
Регистрация: 25-05-05
Из: Moscow
Пользователь №: 5 377

|
всегото одна строчка в Maple: writedata("c:\\prime.txt",[[i,ithprime(i)]$i=1..10000]); Цитата 1 2 2 3 3 5 ....... .......
Сообщение отредактировал pdk - Oct 31 2006, 07:57
|
|
|
|
|
Oct 31 2006, 09:43
|
Группа: Новичок
Сообщений: 2
Регистрация: 11-05-06
Пользователь №: 17 003

|
Цитата(net @ Oct 27 2006, 23:11)  2*n+1 Это формула нечетных чисел. И без досадных недоразумений =)
|
|
|
|
|
Oct 31 2006, 16:43
|
Знающий
   
Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473

|
Цитата(BEZU @ Oct 31 2006, 12:43)  Цитата(net @ Oct 27 2006, 23:11)  2*n+1
Это формула нечетных чисел. И без досадных недоразумений =) эх молодеж и подростки - не читали вы книг ФИЗИКИ ШУТЯТ и ФИЗИКИ ПРОДОЛЖАЮТ ШУТИТЬ очень занимательные книги - если найдете то почитайте
|
|
|
|
|
Oct 31 2006, 23:03
|
Группа: Новичок
Сообщений: 2
Регистрация: 11-05-06
Пользователь №: 17 003

|
Не читали... Каюсь! судя по всему, сглупил... =)
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|