Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/46: Рейтинг темы: голосов - 46, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 02.05.2012
Сообщений: 4
1

Найти все трехзначные простые числа. Определить функцию позволяющую распознавать простые числа

30.05.2012, 16:27. Показов 8722. Ответов 5
Метки нет (Все метки)

Найти все трехзначные простые числа. Определить функцию позволяющую распознавать простые числа. Простые числа это когда они делятся только на себя и на единицу
Пожалуйста помогите решить не получается она неправильно считает
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
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
using namespace std;
int fun(int n,int m);
main ()
{int s,n,m;
s=fun(n,m);
return 0;}
int fun(int n,int m)
{int a[30],j,i;
int x,y,z,h;
cout<<"vvedite diapozon-";
cin>>n>>m;
j=1;
for (i=n; i<=m; i++)
x=i%2;
y=i%3;
z=i%5;
if ((x!=0)&&(y!=0)&&(z!=0))
{a[j]=i; j++; }
for (i=1; i<=j; i++)
cout<<a[i]<<" ";
getch ();
return (z);}
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.05.2012, 16:27
Ответы с готовыми решениями:

Определить процедуру, позволяющую распознавать простые числа
Дано четное число n&gt;2; проверить для этого числа гипотенузу Гольдбаха. Эта гипотенуза заключается в...

Найти все простые трёхзначные числа
найти все простые трёхзначные числа

Функции (Найти все трехзначные простые числа)
Найти все трехзначные простые числа, определив функцию, позволяющую распознавать простые числа.

Функции. Найти все трехзначные простые числа
Найти все трехзначные простые числа. (Определить функцию, позволяющую распознавать простые числа.)

5
2 / 0 / 0
Регистрация: 25.12.2011
Сообщений: 120
30.05.2012, 18:05 2
Вик, я тоже долблюсь над этой задачей))) короче она должна проверять числа следующим образом
C++
1
2
for (i = 2; i<sqrt(n); i++) {
    if (n % i == 0)}
где n - само число
0
24 / 24 / 10
Регистрация: 04.04.2012
Сообщений: 119
30.05.2012, 18:18 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
using namespace std;
int n,m;
int a[30],j,i;
int main ()
{
cout<<"vvedite diapozon-";
cin>>n>>m;
j=1;
for (i=n; i<=m; i++) 
{
if (i%2!=0 && i%3!=0 && i%5!=0 && i%7!=0 && i%9!=0&& i%11!=0) // может много параметров исправьте меня :)
{a[j]=i; j++; }}
for (i=1; i<j; i++)
cout<<a[i]<<" ";
getch ();
}
0
194 / 138 / 56
Регистрация: 06.07.2011
Сообщений: 298
30.05.2012, 19:24 4
C++
1
2
3
4
5
6
7
8
template<class Type>    bool IsPrime(Type value)
{
    for(Type i=2;i<=value/2;i++)
        if((value%i)==0)
            return 0;
 
    return 1;
}
Данная функция возращает 1 если число простое, иначе 0.

Не по теме:

instagib, это копипаста просто:D)

0
122 / 85 / 16
Регистрация: 14.02.2011
Сообщений: 340
30.05.2012, 19:25 5
Serejke_qq,

Не по теме:

для новичков можно было и попроще написать, без шаблонов

0
1 / 1 / 1
Регистрация: 30.07.2015
Сообщений: 8
06.08.2015, 00:44 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
31
32
33
34
35
36
#include <iostream>
#include <vector>
 
typedef unsigned long ulong;
 
int main(){
    ulong low=0;
    ulong hight=0;
 
    std::cout<<"Enter low and hight number: \n";
    std::cin>>low>>hight;
 
    if(low>hight) {std::cout<<"Error range\n"; return 1;}
 
    std::vector<ulong> en;
    en.push_back(1);
    en.push_back(2); // Для работы необходимы начальные условия
 
    bool is_en; // Предикат проверяемого числа
 
    for(ulong i=2;i<=hight;i++){
    is_en = true;
        for(int k=1;k<en.size();k++)
            if(i%en[k]==0) { // Проверяем, делится ли без остатка на элементы списка
                is_en = false;
                break;}
        if(is_en) en.push_back(i); // Нашли целое число!
    }
 
    std::cout<<"Done!\n";
    for(int i=0;i<en.size();i++) // Выводим только значения в диапазоне
        if(low<=en[i] && hight>=en[i])std::cout<<en[i]<<"\t";
    std::cout<<"\n";
 
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.08.2015, 00:44

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Задача про простые числа. Выпишите все простые числа, находящиеся в интервале между а и б
#include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; using std::cout;...

Напечатать все простые трёхзначные числа - С++
напечатать все простые трёхзначные числа - С++

Найти все трехзначные простые числа. Определить функцию, позволяющую распознавать простые числа
помогите пожалуйста с программой Найти все трехзначные простые числа. Определить функцию,...

Найти все трехзначные числа,определив функцию, позволяющую распознавать простые числа
1)Найти все трехзначные числа,определив функцию, позволяющую распозновать простые числа. ...


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

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

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