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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Ambeon
0 / 0 / 0
Регистрация: 27.01.2011
Сообщений: 6
#1

Определить, является ли заданное число простым - C++

09.03.2011, 16:45. Просмотров 1084. Ответов 4
Метки нет (Все метки)

Записать алгоритм, проверяющий является ли заданное число простым как рекурсивную функцию. Вывести на экран все простые числа, не препосходящие данное число.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2011, 16:45     Определить, является ли заданное число простым
Посмотрите здесь:

Определить, является ли число простым C++
C++ Определить, является ли число простым
C++ Определить является ли число простым
Узнать является ли заданное целое число простым C++
Определить, является ли заданное натуральное число простым C++
Проверить, является ли заданное число простым C++
C++ Написать рекурсивную функцию, определяющую, является ли заданное натуральное число простым
C++ Проверить является ли заданное число простым
C++ Проверить является ли заданное число простым
C++ Определить, является ли заданное натуральное число простым
C++ Определить, является ли заданное число простым

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
no0ker
101 / 88 / 4
Регистрация: 17.12.2010
Сообщений: 416
09.03.2011, 16:57     Определить, является ли заданное число простым #2
как вариант проверки на простоту

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
using namespace std;
 
int prost(int in, int del = 0){
 
    if (!del) del = in - 1;
    
    if (in==2 || in==1 || del==1) return 1;
 
    return (in%del)? prost(in,--del) : 0;
}
 
int main()
{
    cout << prost(29);
}
silent_1991
Эксперт С++
4956 / 3032 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
09.03.2011, 17:02     Определить, является ли заданное число простым #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Ambeon,
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
#include <iostream>
 
bool is_simple(unsigned);
bool is_simple_helper(unsigned, size_t);
 
int main()
{
    unsigned num;
 
    std::cout << "Enter number: ";
    std::cin >> num;
 
    for (int i = 1; i < num; ++i)
        if (is_simple(i))
            std::cout << i << std::endl;
 
    return 0;
}
 
bool is_simple(unsigned num)
{
    return num == 1 ? false : is_simple_helper(num, 2);
}
 
bool is_simple_helper(unsigned num, size_t div)
{
    return div * div > num ? true : num % div == 0 ? false : is_simple_helper(num, div + 1);
}
Это не ваш товарищ?
no0ker
101 / 88 / 4
Регистрация: 17.12.2010
Сообщений: 416
09.03.2011, 17:09     Определить, является ли заданное число простым #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
using namespace std;
 
int prost(int in, int del = 2){
 
    if (del*del > in) return 1;
 
    return (in%del)? prost(in, ++del) : 0;
}
 
int main(){
 
    int in, i;
 
    cin>>in;
 
    for(i = 1; i <= in; ++i){
        if(prost(i)) cout<<i<<endl;
    }
 
    return 0;
}
Ambeon
0 / 0 / 0
Регистрация: 27.01.2011
Сообщений: 6
09.03.2011, 17:55  [ТС]     Определить, является ли заданное число простым #5
спасибо))))
Yandex
Объявления
09.03.2011, 17:55     Определить, является ли заданное число простым
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru