1 / 1 / 0
Регистрация: 01.08.2018
Сообщений: 116
1

Поиск простых чисел

04.12.2018, 19:09. Показов 922. Ответов 6

хочу написать программу по поиску простых чисел
вот что у меня есть
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
#include <iostream>
#include <cmath>
#include <conio.h>
#include <windows.h>
using namespace std
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
bool testprost(int pr){
    int i=1;
    sleep(300); 
    for (;i<pr;i++){if (fmod(pr,i)=0=true){return false; goto fign}}
    return true;
fign:
}
 
 
int main(int argc, char** argv) {
    int i,vv;
    setlocale(LC_ALL, "Russian");
    cout<<"введите число"<<endl;
    cin>>vv>>endl;
    cout<<"простые числа"<<endl;
    for(i=0;i<=vv;i++){if (testprost(i)=true)cout<<i<<endl;
    }
    cout<<"вот все простые числа в дипазоне он 0 до"<<vv<<endl;
    getch();
    return 0;
}
компилятор dev c++
почему то ругается на булевый тип данных
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.12.2018, 19:09
Ответы с готовыми решениями:

Поиск простых чисел
помогите пожалуйста с заданием напишите программу которая при помощи двух вложенных циклов for и...

Поиск простых чисел
необходимо найти все простые числа от 1 до 100. Вот я написал код: #include &lt;iostream&gt; #include...

Поиск простых чисел
Всем привет, прохожу книгу Шилдта и остановился на программе:...

Поиск простых чисел
Народ, в программе нужно из введённых чисел найти и вывести простые числа(т.е. 2,3,5,7,11,13... и...

6
7275 / 6220 / 2833
Регистрация: 14.04.2014
Сообщений: 26,871
04.12.2018, 19:30 2
10-я строка не верна. Запиши как положено. Равно в условия двойное, fmod() - для вещественных чисел.
0
14 / 17 / 11
Регистрация: 20.10.2018
Сообщений: 98
04.12.2018, 19:32 3
C++
1
2
3
4
5
6
7
8
bool prst(long long a)
{
    if (a==2) return true;
    if (a<2 || a%2==0) return false;
    for (int i=3;i<=sqrt(a);i+=2)
        if (a%i==0) return false;
    return true;
}
0
1 / 1 / 0
Регистрация: 01.08.2018
Сообщений: 116
05.12.2018, 05:47  [ТС] 4
минуточуку а что что работает для вещественного типа то не работает для целого типа?
0
261 / 111 / 53
Регистрация: 22.01.2017
Сообщений: 448
05.12.2018, 09:05 5
Цитата Сообщение от андрей богатыре Посмотреть сообщение
for (;i<pr;i++){if (fmod(pr,i)=0=true){return false; goto fign}}
Неверный оператор в условии. Даже не знаю что имелось ввиду. В условиях используется оператор сравнения:
C++
1
if(fmod(pr, i) == true)
Та же ошибка и в условии main. К тому же если какая-либо функция возвращает bool, оператор сравнения можно опустить:
C++
1
2
3
4
if(testprost(i))
{
 
}
Я не пытаюсь даже вникнуть в логику, но до goto fign дело не дойдет.
Недавно была тема по поиску простых чисел. Там два алгоритма - Поиск простых чисел
0
1 / 1 / 0
Регистрация: 01.08.2018
Сообщений: 116
06.12.2018, 16:14  [ТС] 6
наконец то заработало
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
#include <cmath>
#include <conio.h>
#include <windows.h>
#include <iostream>
using namespace std;
bool testprost(int pr){
    int i=2;
  //  sleep(300); 
    for (;i<pr-1;i++){if (pr%i==0){return false; goto fign;}}
    return true;
fign:;
}
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
 
int main(int argc, char** argv) 
 
{
 
    int i,vv;
    setlocale(LC_ALL, "Russian");
    cout<<"??????? ?????"<<endl;
    cin>>vv;
    cout<<"??????? ?????"<<endl;
    for(i=0;i<=vv;i++){if (testprost(i)==true)cout<<i<<endl;
    }
    cout<<"??? ??? ??????? ????? ? ???????? ?? 0 ??"<<vv<<endl;
    getch();
    
    return 0;
}
0
Диссидент
Эксперт C
27197 / 16952 / 3747
Регистрация: 24.12.2010
Сообщений: 38,134
06.12.2018, 17:14 7
андрей богатыре, Уже получше, но смотрится все равно ужасно.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
bool testprost(int pr){
    for (int i=2;i*i<=pr;i++) if (pr%i==0) return false; 
    return true;
}
 
int main(int argc, char** argv) 
{
    int i,vv;
    setlocale(LC_ALL, "Russian");
    cout<<"??????? ?????"<<endl;
    cin>>vv;
    cout<<"??????? ?????"<<endl;
    for(i=2;i<=vv;i++)
       if (testprost(i))cout<<i<<endl;
    getch();
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.12.2018, 17:14
Помогаю со студенческими работами здесь

Поиск простых чисел
#include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;locale.h&gt; using namespace std; int y;...

поиск простых чисел
Как найти количество цифр n- значных чисел, у которых сумма любых двух соседних цифр является...

Поиск простых чисел
Знаю, что тема избитая, но решил написать алгоритм поиска простых чисел. int j,i,k /*количество...

Поиск простых чисел
3. Разработать программу поиска простых чисел в отрезке (1..N) целых положительных чисел. Программа...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru