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

Есть промежуток от [1, n]. Требуется вывести все простые числа - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Наследования http://www.cyberforum.ru/cpp-beginners/thread974316.html
#include <iostream> #include <string> using namespace std; class student { protected: int sem; string name; float *make;
C++ Вычисление суммы ряда, подскажите пожалуйста Добрый день, уважаемые программисты! Совсем недавно узнал про этот замечательный форум, очень рад, что есть такие добрые и отзывчивые люди как вы. Хотелось бы попросить у вас помощи, разобраться с одним заданием. Дано натуральное число N. Вычислить: сама формула во вложении. Вот код, подскажите, что не так, что нужно исправить и что нужно дописать. Заранее спасибо! #include "stdafx.h"... http://www.cyberforum.ru/cpp-beginners/thread974314.html
C++ нужно удалить и вывести все символы после *(его не нужно выводить). я смог наоборот вывести всё до него! помоите
#include "stdafx.h" #include "iostream" #include "string" #include "conio.h" using namespace std; int _tmain(int argc, _TCHAR* argv) { int i,a; char s="Privet lol*lol kolobok";
Указатели C++
Что делает следующий фрагмент кода? В чем состоит логическая ошибка? (Отметим, что операция индексирования () применена к указателю pia правильно. #include <iostream> using namespace std; int main() { int *adress; int *pi = new int(10); int *pia = new int;
C++ Член последовательности http://www.cyberforum.ru/cpp-beginners/thread974273.html
Дано действительные числа А и В (А<В). Найти первый член последовательности который не принадлежит . Напишите пожалуйста весь исходник, будьте добры.
C++ Числовая последовательность Добрый вечер, форумчане! Суть такова, что необходимо подсчитать количество чисел, которые являются квадратами некоторого натурального числа (число не вводится с клавиатуры и не задано) и не превосходят числа А. Программа завершает работу когда последним членом является 0. Вот мой код: #include <stdio.h> #include <conio.h> #include <math.h> int main() { double a, A; подробнее

Показать сообщение отдельно
Insane__
43 / 42 / 4
Регистрация: 10.09.2013
Сообщений: 292
10.10.2013, 22:58     Есть промежуток от [1, n]. Требуется вывести все простые числа
Вот более интересное решение данной задачи:
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
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
 
using namespace std;
 
template<int N>
class bitset
{
public:
    bitset() : bits(new char[(N - 1) / 8 + 1]) {}
    bool test(int n) { return (bits[n >> 3] & (1 << (n & 7))) != 0; }
    void set(int n) { bits[n >> 3] |= 1 << (n & 7); }
    void reset(int n) { bits[n >> 3] &= ~(1 << (n & 7)); }
private:
    char* bits;
};
 
int main()
{ 
    const int N = 30;
 
    bitset<N + 1> b;
    
    int i;
    for (i = 2; i <= N; i++)
        b.set(i);
    i = 2;
    while (i * i <= N)
    { 
        if (b.test(i))
        { 
            int k = 2 * i;
            while (k <= N)
            { 
                b.reset(k);
                k += i;
            }
        }
        i++;
    }
    i = 2;
    
    while(i <= N){
        if (b.test(i))
        { 
            cout<<i<<" ";
        }
        i++;
    }
    cin.get();
    cin.get();
    return 0;
}
 
Текущее время: 15:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru