Форум программистов, компьютерный форум CyberForum.ru

Решето Эратосфена понять алгоритм. - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
Hotbed
 Аватар для Hotbed
48 / 2 / 1
Регистрация: 02.04.2011
Сообщений: 55
16.04.2011, 12:00     Решето Эратосфена понять алгоритм. #1
Решето Эратосфена.
Помогите пожалуйста понять алгоритм кода.
На одном хостере видеороликов, есть учебное видео рассматривающий алгоритм сортировки массива (Решето Эратосфена ).

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
#include <iomanip>
using namespace std;
 
const int SIEVE_SIZE = 1000;
 
int main()
{
    int sieve[SIEVE_SIZE] = {}; // здесь инициализируется массив 
    
    for(int i = 2; i< SIEVE_SIZE; i++)  // тут выбирается начало отсчета  со 2-го элемента (то есть с числа 2 )  с шагом = 1
    {
        if(sieve[i] == 0) // Здесь делается условие когда элементы = 0 то выполняется цикл
        {
                    
            for (int j = i; j< SIEVE_SIZE; j+=i)   // Создается цикл в котором ,  лимит в размере массива и для которого в первом проходе j=3   
            {         
                                
                 sieve[j] = 2; // для всех j элементов присваивается значение 2
            }
            
            sieve[i] = 1; // вот здесь не понятно что в памяти хранится в первом проходе цикла    for(int i = 2; i< SIEVE_SIZE; i++)  ?
            }
            }
            
    int qPrimes = 0; // инициализируем переменную с началом = 0
    
    for (int i = 0; i<SIEVE_SIZE; i++)
            {
               if(sieve[i] ==1)//вот этот момент не понятен что же в памяти  цикла for?
                {
                cout << setw(5) << i << "   ";// ну а с остальным вроде понятно
                qPrimes++;
                if (qPrimes  % 5 == 0) cout << endl;
                }
        
}
    
    system("PAUSE >> null");
    return 0;
}
Возможно я не прав в своих выводах в комментариях.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.04.2011, 12:00     Решето Эратосфена понять алгоритм.
Посмотрите здесь:

Решето Эратосфена C++
Решето Эратосфена C++
C++ Решето Эратосфена
Алгоритм "Решето Эратосфена" C++
Решето Эратосфена C++
Решето Эратосфена C++
C++ Решето Эратосфена
C++ Решето Эратосфена

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 20:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru