реклама на сайте
подробности

 
 
> Простые числа, где можно найти ряд
ig_z
сообщение Oct 2 2006, 12:21
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551



Подскажите, где можно найти ряд простых чисел. От 1000 и дальше. Поиском найти не смог.
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 23)
DRUID3
сообщение Oct 2 2006, 13:21
Сообщение #2


山伏
*****

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



Цитата(ig_z @ Oct 2 2006, 15:21) *
Подскажите, где можно найти ряд простых чисел. От 1000 и дальше. Поиском найти не смог.

biggrin.gif Вы бы еще формулу попросили...

Код
//////////////////////////////////////////////////////////////////////////////
//
//  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.: Кстати, о формуле простых чисел ( biggrin.gif laugh.gif ), вот человек получил кое какие аппроксимации ряда (я сам не проверял, т.к. довольно холоден к фундаментальной математике). Но если надумаете, как их применить в прикладных задачах - Вам и карты в руки... wink.gif


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post
ig_z
сообщение Oct 2 2006, 13:53
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551



Цитата(DRUID3 @ Oct 2 2006, 16:21) *
Цитата(ig_z @ Oct 2 2006, 15:21) *

Подскажите, где можно найти ряд простых чисел. От 1000 и дальше. Поиском найти не смог.

biggrin.gif Вы бы еще формулу попросили...



Спасибо за ответ. Я еще более холоден к данной теме. Просто просьба со стороны.

Что касается формульного расчета, то действительно гарантировано простое число на выходе. Но, если я не ошибаюсь, нет гарантии, что будет рассчитан весь ряд без пропусков. Вроде я слышал, что раньше публиковали полные ряды, получаемые тупым перебором. Вот такое бы найти.
Go to the top of the page
 
+Quote Post
Andrew10
сообщение Oct 2 2006, 14:35
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 228
Регистрация: 22-10-05
Из: Саратов
Пользователь №: 9 960



В Mathematica-5.2 функция Prime[n] дает n-ое простое число. Расчет чисел с номерами от 1000 до 10000 на Pentium, 1.7 ГГц занял 0.015 секунды (без вывода на экран или в файл)
Go to the top of the page
 
+Quote Post
DRUID3
сообщение Oct 2 2006, 15:06
Сообщение #5


山伏
*****

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



Цитата(Andrew10 @ Oct 2 2006, 17:35) *
В Mathematica-5.2 функция Prime[n] дает n-ое простое число. Расчет чисел с номерами от 1000 до 10000 на Pentium, 1.7 ГГц занял 0.015 секунды (без вывода на экран или в файл)

biggrin.gif дык кто Вам мешает копирнуть ряд сюда и помочь человеку?


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post
Stanislav
сообщение Oct 2 2006, 15:11
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987



В матлабе:
P=primes(n);
Здесь n - верхний предел простого числа. А можно и так:
P=primes(n)
В последнем случае n желательно взять больше 10 000 000.

И будет счастье! biggrin.gif


--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
Go to the top of the page
 
+Quote Post
Andrew10
сообщение Oct 2 2006, 18:17
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 228
Регистрация: 22-10-05
Из: Саратов
Пользователь №: 9 960



Цитата
biggrin.gif дык кто Вам мешает копирнуть ряд сюда и помочь человеку?


Лови!

В файле в две колонки номер простого числа и само число. Первым простым числом считается 2.
Первые 100000 чисел.Прикрепленный файл  primes.zip ( 286.71 килобайт ) Кол-во скачиваний: 220
Go to the top of the page
 
+Quote Post
Krys
сообщение Oct 27 2006, 08:08
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Извиняюсь, если офтопик, но ещё в школе на олимпиаде по математике у нас была такая задачка: какова сумма всех простых чисел до 1000? Притом время было ограниченное. Я так до сих пор и не понял, в чём тут был подвох (простота)? Я должен был перебирать все числа до 1000? Потом тупо их просуммировать? Этих чисел судя по выданной тут таблице сотня штук - замучаешься вычислять...
Кто знает отгадку?
Go to the top of the page
 
+Quote Post
exSSerge
сообщение Oct 27 2006, 18:44
Сообщение #9


Частый гость
**

Группа: Новичок
Сообщений: 136
Регистрация: 18-08-06
Из: Novosibirsk
Пользователь №: 19 655



Цитата(Krys @ Oct 27 2006, 15:08) *
Извиняюсь, если офтопик, но ещё в школе на олимпиаде по математике у нас была такая задачка: какова сумма всех простых чисел до 1000? Притом время было ограниченное. Я так до сих пор и не понял, в чём тут был подвох (простота)? Я должен был перебирать все числа до 1000? Потом тупо их просуммировать? Этих чисел судя по выданной тут таблице сотня штук - замучаешься вычислять...
Кто знает отгадку?

Дык, сначала все просуммировать, а потом те, которые не простые вычесть. Причём пройтись (решетом Эратосфена) придётся только по простым числам, меньше корня из 1000, т.е. до 31.
Go to the top of the page
 
+Quote Post
net
сообщение Oct 27 2006, 19:11
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473



да ладно вам smile.gif
в известной книге приведена очень простая формула простых чисел
2*n+1 и это известно всем
для примера по формуле 1,3,5,7, правда 9 досадное недорузумение - зато 11 и 13 последовательно потдверждают эту формулу - ну а дальше дело за мат индукцией smile.gif
Go to the top of the page
 
+Quote Post
Krys
сообщение Oct 28 2006, 07:19
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



exSSerge, не очень Вас понял. Нельзя ли прямо на примере показать?
Ещё раз хочу сказать, что задача должна быть решена в ограниченное время школьником, а не знатаком высшей математики и не гением, могущим безошибочно сложить под сотню чисел :))
Go to the top of the page
 
+Quote Post
pdk
сообщение Oct 31 2006, 07:55
Сообщение #12


Частый гость
**

Группа: 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
Go to the top of the page
 
+Quote Post
BEZU
сообщение Oct 31 2006, 09:43
Сообщение #13





Группа: Новичок
Сообщений: 2
Регистрация: 11-05-06
Пользователь №: 17 003



Цитата(net @ Oct 27 2006, 23:11) *
2*n+1

Это формула нечетных чисел. И без досадных недоразумений =)
Go to the top of the page
 
+Quote Post
net
сообщение Oct 31 2006, 16:43
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 858
Регистрация: 9-08-04
Пользователь №: 473



Цитата(BEZU @ Oct 31 2006, 12:43) *
Цитата(net @ Oct 27 2006, 23:11) *

2*n+1

Это формула нечетных чисел. И без досадных недоразумений =)


эх молодеж и подростки - не читали вы книг ФИЗИКИ ШУТЯТ и ФИЗИКИ ПРОДОЛЖАЮТ ШУТИТЬ
очень занимательные книги - если найдете то почитайте smile.gif
Go to the top of the page
 
+Quote Post
BEZU
сообщение Oct 31 2006, 23:03
Сообщение #15





Группа: Новичок
Сообщений: 2
Регистрация: 11-05-06
Пользователь №: 17 003



Не читали...
Каюсь! судя по всему, сглупил... =)
Go to the top of the page
 
+Quote Post
SKov
сообщение Nov 1 2006, 14:22
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119



Цитата(Krys @ Oct 28 2006, 10:19) *
exSSerge, не очень Вас понял. Нельзя ли прямо на примере показать?
Ещё раз хочу сказать, что задача должна быть решена в ограниченное время школьником, а не знатаком высшей математики и не гением, могущим безошибочно сложить под сотню чисел smile.gif)

Думаю, мысль уважаемого exSSerge предельно ясна. Попробую ее расшифровать
и перевести на "школьный" язык
1) Считаем S= сумму ВСЕХ чисел до 1000.
Теперь из нее надо вычесть все непростые числа. В школе учат, что непростые числа должны раскладываться на сомножители.
2) Рассмотрим непростые числа до 1000, которые имеют в разложении на простые числа число 2 в качестве сомножителя. Какие это числа и сколько их? Очевидно что максимальное число это 2*500.
Любое число вида 2*Т, где Т<=500 должно быть вычтено. Т.е. складываем ВСЕ числа от 2 * 2 до 2*500 или, что то же самое , считаем сумму всех чисел от 2 до 500 и умножаем на два. Вычитаем результат из S.
3) Повторяем аналогичную процедуру для 3. Т.е. считаем сумму всех чисел от 3 до 1000/3=333, умножаем на 3 и вычитаем из результата п.2
4) Число 4 не рассматриваем, т.к. все непростые числа, делящиеся на 4 уже учтены в п.2
В этот момент становится ясно, что надо рассматривать только простые сомножители, а их не так много.
Последний пункт будет иметь номер 31. На последнем шаге надо взять сумму всех чисел от 31 до 1000/31 и умножить на 31.
Go to the top of the page
 
+Quote Post
Oldring
сообщение Nov 1 2006, 14:51
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(SKov @ Nov 1 2006, 17:22) *
Цитата(Krys @ Oct 28 2006, 10:19) *

exSSerge, не очень Вас понял. Нельзя ли прямо на примере показать?
Ещё раз хочу сказать, что задача должна быть решена в ограниченное время школьником, а не знатаком высшей математики и не гением, могущим безошибочно сложить под сотню чисел smile.gif)

Думаю, мысль уважаемого exSSerge предельно ясна. Попробую ее расшифровать
и перевести на "школьный" язык
1) Считаем S= сумму ВСЕХ чисел до 1000.
Теперь из нее надо вычесть все непростые числа. В школе учат, что непростые числа должны раскладываться на сомножители.
2) Рассмотрим непростые числа до 1000, которые имеют в разложении на простые числа число 2 в качестве сомножителя. Какие это числа и сколько их? Очевидно что максимальное число это 2*500.
Любое число вида 2*Т, где Т<=500 должно быть вычтено. Т.е. складываем ВСЕ числа от 2 * 2 до 2*500 или, что то же самое , считаем сумму всех чисел от 2 до 500 и умножаем на два. Вычитаем результат из S.
3) Повторяем аналогичную процедуру для 3. Т.е. считаем сумму всех чисел от 3 до 1000/3=333, умножаем на 3 и вычитаем из результата п.2
4) Число 4 не рассматриваем, т.к. все непростые числа, делящиеся на 4 уже учтены в п.2
В этот момент становится ясно, что надо рассматривать только простые сомножители, а их не так много.
Последний пункт будет иметь номер 31. На последнем шаге надо взять сумму всех чисел от 31 до 1000/31 и умножить на 31.


В этом описании есть пара проколов, то есть, это еще не решение задачи - но идея вероятно правильная. Проколы - не нужно вычитать сами простые числа (т. е. сумма для числа 3 должна быть не от 3, а от 9) и нужно еще прибавить суммы кратных парам различных простых и вычесть суммы кратных тройкам различных простых. Простое число 2 лучше обработать специально, суммируя только нечетные простые. В общем, повозиться нужно - но проде все в пределах возможностей школьника.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
SKov
сообщение Nov 2 2006, 07:49
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119



Цитата(Oldring @ Nov 1 2006, 17:51) *
Цитата(SKov @ Nov 1 2006, 17:22) *

Цитата(Krys @ Oct 28 2006, 10:19) *

exSSerge, не очень Вас понял. Нельзя ли прямо на примере показать?
Ещё раз хочу сказать, что задача должна быть решена в ограниченное время школьником, а не знатаком высшей математики и не гением, могущим безошибочно сложить под сотню чисел smile.gif)

Думаю, мысль уважаемого exSSerge предельно ясна. Попробую ее расшифровать
и перевести на "школьный" язык
1) Считаем S= сумму ВСЕХ чисел до 1000.
Теперь из нее надо вычесть все непростые числа. В школе учат, что непростые числа должны раскладываться на сомножители.
2) Рассмотрим непростые числа до 1000, которые имеют в разложении на простые числа число 2 в качестве сомножителя. Какие это числа и сколько их? Очевидно что максимальное число это 2*500.
Любое число вида 2*Т, где Т<=500 должно быть вычтено. Т.е. складываем ВСЕ числа от 2 * 2 до 2*500 или, что то же самое , считаем сумму всех чисел от 2 до 500 и умножаем на два. Вычитаем результат из S.
3) Повторяем аналогичную процедуру для 3. Т.е. считаем сумму всех чисел от 3 до 1000/3=333, умножаем на 3 и вычитаем из результата п.2
4) Число 4 не рассматриваем, т.к. все непростые числа, делящиеся на 4 уже учтены в п.2
В этот момент становится ясно, что надо рассматривать только простые сомножители, а их не так много.
Последний пункт будет иметь номер 31. На последнем шаге надо взять сумму всех чисел от 31 до 1000/31 и умножить на 31.


В этом описании есть пара проколов, то есть, это еще не решение задачи - но идея вероятно правильная. Проколы - не нужно вычитать сами простые числа (т. е. сумма для числа 3 должна быть не от 3, а от 9) и нужно еще прибавить суммы кратных парам различных простых и вычесть суммы кратных тройкам различных простых. Простое число 2 лучше обработать специально, суммируя только нечетные простые. В общем, повозиться нужно - но проде все в пределах возможностей школьника.

Не во всем согласен с уважаемый Oldring
По пунктам:
1)"не нужно вычитать сами простые числа (т. е. сумма для числа 3 должна быть не от 3, а от 9)"
Никто и не собирался этого делать. В моем п.2 четко записано: " складываем ВСЕ числа от 2 * 2 до 2*500 ". Видите, здесь считается сумма не от 2 а от 2*2. Просто удобнее вынести 2 за скобки, подсчитать сумму в скобках и один раз умножить на 2. Аналогично - с другими простыми числами.
2)"нужно еще прибавить суммы кратных парам различных простых и вычесть суммы кратных тройкам различных простых." Тут есть разумное зерно. Действительно, если число делится и на 2 и на 3 (например, 2*3*6=36),то мы его выбросим два раза (2*18 и 3*12). В чуть более общем виде: если число содержит несколько простых сомножителей, то оно будет вычтено столько раз, сколько (разных)простых сомножителей в него входит. Как это просто учесть (без тупого перебора пар, троек и т.д.) - я сразу не могу сообразить . надо представить себя школьником и подумать wink.gif
С уважением,
SKov
Go to the top of the page
 
+Quote Post
exSSerge
сообщение Nov 2 2006, 09:24
Сообщение #19


Частый гость
**

Группа: Новичок
Сообщений: 136
Регистрация: 18-08-06
Из: Novosibirsk
Пользователь №: 19 655



Цитата(SKov @ Nov 2 2006, 13:49) *
В чуть более общем виде: если число содержит несколько простых сомножителей, то оно будет вычтено столько раз, сколько (разных)простых сомножителей в него входит. Как это просто учесть (без тупого перебора пар, троек и т.д.) - я сразу не могу сообразить . надо представить себя школьником и подумать wink.gif

Вот и мне, когда писал, показалось что нашёл способ это сделать.
Потом подумал - оказалось ошибался.
Можно попробовать тем-же методом подсчитывать сумму непростых чисел уже учтённых на прошлых шагах, но получается уж очень развесистый рекурсивный алгоритм. Крыша уже поскрипывает, того и гляди - поедет. smile.gif
Go to the top of the page
 
+Quote Post
Oldring
сообщение Nov 2 2006, 09:49
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(exSSerge @ Nov 2 2006, 12:24) *
Цитата(SKov @ Nov 2 2006, 13:49) *

В чуть более общем виде: если число содержит несколько простых сомножителей, то оно будет вычтено столько раз, сколько (разных)простых сомножителей в него входит. Как это просто учесть (без тупого перебора пар, троек и т.д.) - я сразу не могу сообразить . надо представить себя школьником и подумать wink.gif

Вот и мне, когда писал, показалось что нашёл способ это сделать.
Потом подумал - оказалось ошибался.
Можно попробовать тем-же методом подсчитывать сумму непростых чисел уже учтённых на прошлых шагах, но получается уж очень развесистый рекурсивный алгоритм. Крыша уже поскрипывает, того и гляди - поедет. smile.gif


Да не такой уж и долгий тупой перебор.
Если забыть про четные с самого начала - четверок нет совсем, а троек всего три. Ну а пар оказывается 45 smile.gif Не дюжина конечно - но и не несколько сотен уже.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
UMP
сообщение Nov 2 2006, 20:09
Сообщение #21


Частый гость
**

Группа: Свой
Сообщений: 78
Регистрация: 27-07-06
Пользователь №: 19 147



Прикрепленный файл  e10_06Dyak.rar ( 2.64 килобайт ) Кол-во скачиваний: 143
В книге Дьяконов В.П. Энциклопедия Mathcad 200i, 11 М.: Солон-Пресс, 2004 приведена прикрепленный к настоящему сообщению файл, предназначенный для вычисления про-стых числ.
Go to the top of the page
 
+Quote Post
-=ВН=-
сообщение Nov 3 2006, 08:17
Сообщение #22


Местный
***

Группа: Новичок
Сообщений: 210
Регистрация: 3-11-06
Пользователь №: 21 936



Цитата(ig_z @ Oct 2 2006, 15:21) *
Подскажите, где можно найти ряд простых чисел. От 1000 и дальше. Поиском найти не смог.

Если файл прицепится, то в нем.
Когда-то генерировал для своих нужд. До миллиона с чем-то. Первый столбуц - порядковый номер.
Прикрепленные файлы
Прикрепленный файл  SN131072.rar ( 494.79 килобайт ) Кол-во скачиваний: 41
 
Go to the top of the page
 
+Quote Post
-=ВН=-
сообщение Nov 3 2006, 09:05
Сообщение #23


Местный
***

Группа: Новичок
Сообщений: 210
Регистрация: 3-11-06
Пользователь №: 21 936



Цитата(SKov @ Nov 1 2006, 17:22) *
Цитата(Krys @ Oct 28 2006, 10:19) *

exSSerge, не очень Вас понял. Нельзя ли прямо на примере показать?
Ещё раз хочу сказать, что задача должна быть решена в ограниченное время школьником, а не знатаком высшей математики и не гением, могущим безошибочно сложить под сотню чисел smile.gif)

Думаю, мысль уважаемого exSSerge предельно ясна. Попробую ее расшифровать
и перевести на "школьный" язык
1) Считаем S= сумму ВСЕХ чисел до 1000.
Теперь из нее надо вычесть все непростые числа. В школе учат, что непростые числа должны раскладываться на сомножители.
2) Рассмотрим непростые числа до 1000, которые имеют в разложении на простые числа число 2 в качестве сомножителя. Какие это числа и сколько их? Очевидно что максимальное число это 2*500.
Любое число вида 2*Т, где Т<=500 должно быть вычтено. Т.е. складываем ВСЕ числа от 2 * 2 до 2*500 или, что то же самое , считаем сумму всех чисел от 2 до 500 и умножаем на два. Вычитаем результат из S.
3) Повторяем аналогичную процедуру для 3. Т.е. считаем сумму всех чисел от 3 до 1000/3=333, умножаем на 3 и вычитаем из результата п.2
4) Число 4 не рассматриваем, т.к. все непростые числа, делящиеся на 4 уже учтены в п.2
В этот момент становится ясно, что надо рассматривать только простые сомножители, а их не так много.
Последний пункт будет иметь номер 31. На последнем шаге надо взять сумму всех чисел от 31 до 1000/31 и умножить на 31.

Что-то похожее...
1. Считаем сумму всех нечетных чисел, от 1. Ар. прогрессия. Сумма=1000*250. Прибавлеякм к ней 2. Итого S1=250002
2. Считаем сумму всех чисел, делящихся на 5, соотвенно на 5 и оканивающихся.
В каждом десятке одно такое число. Десятков 100. Итого 100 чисел. Ар прогрессия. Сумма=1000*50.
Вычитаем ее из S1 и прибавляем 5. Итого S2=200007.
3a. Считаем сумму всех, кончающихся на 1 и делящихся на 3.
Ряд этих чисел образует арифм. прогрессию с начальным числом 21, интервалом 30 и последним числом 981. Итого 33 числа. Сумма,S3a=21+1002*16.
3b. сумму всех чисел, кончающихся на 3 и делящихся на 3, исключая само число 3.
Опять прогрессия из 33 чисел с шагом 30. Начало=33, конец 993. Сумма, S3b=33+1026*16
3c. Сумму, кончающихся на 7 и делящихся на 3. Начало прогрессии=27, конец=987, интервал=30.
33 числа. S3с=27+1014*16
3d. Кончаются на 9, делятся на 3. Началопрогрессии=9, конец=999, интервал=30, 34 числа.
S3d=9+39+1068*16.
S3=S2-(S3a+S3b+S3c+S3d)=200007-129-4110*16.
4. Осталось 8 чисел, на которые может разлагаться любое составное число из осташихся.
7,11,13,17,19,23,29,31.
7 стоит особняком. Так как оно моожет входить в тройные произведения.
Числа 11,13,17,19,23,29,31 могут образовывать только 2-ные произведения.
Произведений этих 28, считаются и суммируются врукопашную. Это будет S4a.
Число 7 образует еще ряд составных чисел:
7*7; 7*11; 7*13;7*17;7*19;7*23;7*29;7*31;
7*7*7; 7*7*11;7*7*13;7*7*17;7*7*19;
7*11*11;
Их сумма S4b.
Итого сумма всех простых, от 1 до 1000, включая 1 S=200007-129-4110*16-S4a-S4b.
angry.gif
Go to the top of the page
 
+Quote Post
-=ВН=-
сообщение Nov 6 2006, 23:16
Сообщение #24


Местный
***

Группа: Новичок
Сообщений: 210
Регистрация: 3-11-06
Пользователь №: 21 936



Цитата(-=ВН=- @ Nov 3 2006, 12:05) *
Цитата(SKov @ Nov 1 2006, 17:22) *

Цитата(Krys @ Oct 28 2006, 10:19) *

exSSerge, не очень Вас понял. Нельзя ли прямо на примере показать?
Ещё раз хочу сказать, что задача должна быть решена в ограниченное время школьником, а не знатаком высшей математики и не гением, могущим безошибочно сложить под сотню чисел smile.gif)

Думаю, мысль уважаемого exSSerge предельно ясна. Попробую ее расшифровать
и перевести на "школьный" язык
1) Считаем S= сумму ВСЕХ чисел до 1000.
Теперь из нее надо вычесть все непростые числа. В школе учат, что непростые числа должны раскладываться на сомножители.
2) Рассмотрим непростые числа до 1000, которые имеют в разложении на простые числа число 2 в качестве сомножителя. Какие это числа и сколько их? Очевидно что максимальное число это 2*500.
Любое число вида 2*Т, где Т<=500 должно быть вычтено. Т.е. складываем ВСЕ числа от 2 * 2 до 2*500 или, что то же самое , считаем сумму всех чисел от 2 до 500 и умножаем на два. Вычитаем результат из S.
3) Повторяем аналогичную процедуру для 3. Т.е. считаем сумму всех чисел от 3 до 1000/3=333, умножаем на 3 и вычитаем из результата п.2
4) Число 4 не рассматриваем, т.к. все непростые числа, делящиеся на 4 уже учтены в п.2
В этот момент становится ясно, что надо рассматривать только простые сомножители, а их не так много.
Последний пункт будет иметь номер 31. На последнем шаге надо взять сумму всех чисел от 31 до 1000/31 и умножить на 31.

Что-то похожее...
1. Считаем сумму всех нечетных чисел, от 1. Ар. прогрессия. Сумма=1000*250. Прибавлеякм к ней 2. Итого S1=250002
2. Считаем сумму всех чисел, делящихся на 5, соотвенно на 5 и оканивающихся.
В каждом десятке одно такое число. Десятков 100. Итого 100 чисел. Ар прогрессия. Сумма=1000*50.
Вычитаем ее из S1 и прибавляем 5. Итого S2=200007.
3a. Считаем сумму всех, кончающихся на 1 и делящихся на 3.
Ряд этих чисел образует арифм. прогрессию с начальным числом 21, интервалом 30 и последним числом 981. Итого 33 числа. Сумма,S3a=21+1002*16.
3b. сумму всех чисел, кончающихся на 3 и делящихся на 3, исключая само число 3.
Опять прогрессия из 33 чисел с шагом 30. Начало=33, конец 993. Сумма, S3b=33+1026*16
3c. Сумму, кончающихся на 7 и делящихся на 3. Начало прогрессии=27, конец=987, интервал=30.
33 числа. S3с=27+1014*16
3d. Кончаются на 9, делятся на 3. Началопрогрессии=9, конец=999, интервал=30, 34 числа.
S3d=9+39+1068*16.
S3=S2-(S3a+S3b+S3c+S3d)=200007-129-4110*16.
4. Осталось 8 чисел, на которые может разлагаться любое составное число из осташихся.
7,11,13,17,19,23,29,31.
7 стоит особняком. Так как оно моожет входить в тройные произведения.
Числа 11,13,17,19,23,29,31 могут образовывать только 2-ные произведения.
Произведений этих 28, считаются и суммируются врукопашную. Это будет S4a.
Число 7 образует еще ряд составных чисел:
7*7; 7*11; 7*13;7*17;7*19;7*23;7*29;7*31;
7*7*7; 7*7*11;7*7*13;7*7*17;7*7*19;
7*11*11;
Их сумма S4b.
Итого сумма всех простых, от 1 до 1000, включая 1 S=200007-129-4110*16-S4a-S4b.
angry.gif

В 4 пункте незадача случилась. Пардон.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 06:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01606 секунд с 7
ELECTRONIX ©2004-2016