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

Решето Эратосфена - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Шифр Бэкона http://www.cyberforum.ru/cpp-beginners/thread210692.html
Народ, помогите решить задачу, если есть что то похожее то можете дать ссылку? Буду очень благодарен Шифр Бэкона. Требуется разработать программу шифрования текстовых данных в файле и программу дешифрования. ключ хранится в отдельном файле.
C++ Дана строка Подсчитать общие количество в ней строчных латинских букв спасите Дана строка Подсчитать общие количество в ней строчных латинских букв 2 Дана строка предложение Записать все слова встроке с права на лево ПРимер It is nice dav ---tI si ecin vad. http://www.cyberforum.ru/cpp-beginners/thread210683.html
Найти сумму 2 наибольших из трех чисел C++
1) Даны 3 целых числа. Найти сумму 2 наибольших из них. 2)дана структура данных из 5 названий цветочных растений цветок -название -месяц цветения пользователь вводит дату получает название растения.
C++ Видеоизображение
Кто-нибудь выводил сабж на экран монитора?
C++ C++. Замена элементов в файле http://www.cyberforum.ru/cpp-beginners/thread210655.html
Доброго времени суток. Помогите решить задачку. Для двоичного файла, содержащего данные типа int, создать его копию, в которой заменить элементы с четным значением на 0, а нечетным на –1. Количество элементов в исходном файле не ограничено. Спасибо.
C++ Массивы структур Помогите написать программу, выдаёт много ошибок. Разработать программу , позволяющую добавлять данные структур с указанными полями в массив, просматривать массивы, а также выполнять дополнительную операцию в соответствии с индивидуальным заданием. Поля структуры: код студента, фамилия, предмет, оценка. Операция: найти средний балл студента с введенной фамилией. подробнее

Показать сообщение отдельно
1234569
5 / 5 / 1
Регистрация: 25.11.2010
Сообщений: 23
14.12.2010, 12:52     Решето Эратосфена
Определить простые числа методом просеивания с помощью <<решета Эратосфена>> с _битовой упаковкой_ данных при сохранении.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <math.h>
#include <fstream.h>
#define MAXN 100000000
char sieveE[MAXN];
 
void main()
{ 
    ofstream f1("out.txt"); 
                //xxx: Папа рус, мама рус, почему же я индус?
    f1 << "2\n"; 
                //yyy: И уже который год я пишу индусский код.
    unsigned long j,i,n=MAXN,sqrtLimit=(unsigned long)sqrt(n);
        sieveE[1]=1;
 
        for(i=3;i<=sqrtLimit;i+=2)
            if(!sieveE[i]) 
                for(j=i*i;j<=n;j+=i<<1)
                    sieveE[j] = 1;               
        for(i=3; i<=n ; i+=2)
            if(!sieveE[i]) f1 << i << endl;
}
1)Что в данном контексте значит "битовая упаковка" и как она реализуется?
2)Возможно ли вывести 2 внутри цикла?
3)Возможно ли задать нижний предел?
4)Возможно ли убрать #define MAXN и char sieveE[MAXN] в main?
5)Как я понимаю, if(!sieveE[i]) проверяет sieveE[i] на ложность, но от чего?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru