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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
Knecer
0 / 0 / 0
Регистрация: 17.12.2013
Сообщений: 27
20.12.2013, 08:51     Проверить, является ли заданное число простым #1
Дано целое число N (N>1). Проверить, является ли заданное число простым (простым называется число, имеющее ровно 2 делителя: себя и единицу).
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
20.12.2013, 09:51
  #2
 Комментарий модератора 
Knecer, называйте пожалуйста темы информативно. (4.3)
Arigato
Программист
 Аватар для Arigato
278 / 175 / 94
Регистрация: 05.12.2013
Сообщений: 570
Записей в блоге: 5
20.12.2013, 10:16     Проверить, является ли заданное число простым #3
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
/*Дано целое число N (N>1). Проверить, является ли заданное число простым (простым называется число, имеющее ровно 2 делителя: себя и единицу). */
 
#include <iostream>
 
using namespace std;
 
int divs_count(int a)
{
    int c=0;
    for (int i=1; i<=a; i++)
        if (a % i == 0)
            c++;
    return c;
}
 
int main() {
    int n;
    cout << "N = ";
    cin >> n;
    if (divs_count(n) == 2)
        cout << "Prostoe" << endl;
    else
        cout << "Ne prostoe" << endl;
    system("PAUSE");
    return 0;
}
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
20.12.2013, 11:22     Проверить, является ли заданное число простым #4
C++
1
2
3
4
5
6
7
bool isPrime (int n)
{
    for (int i = 2; i < sqrt(n); i++)
        if (n % i == 0)
            return false; // число делится, сл. непростое
    return true;
}
Arigato
Программист
 Аватар для Arigato
278 / 175 / 94
Регистрация: 05.12.2013
Сообщений: 570
Записей в блоге: 5
20.12.2013, 12:02     Проверить, является ли заданное число простым #5
MrGluck, 1 не простое, а ваша функция скажет, что простое. Хоть в условии и сказано, что N>1, но функция не универсальна.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,429
20.12.2013, 12:03     Проверить, является ли заданное число простым #6
C++
1
2
3
4
5
6
7
bool isPrime (int n)
{
    for (int i = 2; i < sqrt(n); i++)
        if (n % i == 0)
            return false; // число делится, сл. непростое
    return n > 1;
}
Yandex
Объявления
20.12.2013, 12:03     Проверить, является ли заданное число простым
Ответ Создать тему
Опции темы

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