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

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

Войти
Регистрация
Восстановить пароль
 
In Da Fly
0 / 0 / 0
Регистрация: 28.05.2010
Сообщений: 22
#1

числа из определённого диапазона. - C++

02.02.2011, 22:07. Просмотров 473. Ответов 6
Метки нет (Все метки)

люди у меня короче проблема мне нужно сделать программу в с++ я нашёл в нете подобие моего задания и ещё кое что сам сделал у меня программа должна выдовать определёные числа (простые или взаимнопростые или простые парные) из определённого диапазона.у меня нормально работает поиск простых чисел только а все остальные нет люди помогите мне с проблемой может это програма ху если так то скиньте ссылку или что то что бы скачал.
вот скрипты на три программы:
1 простые числа
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream.h>
using namespace std;
int main ()
 {     
   int x,y,n;
   cout<<\"n n=";
   cin>>n;
    for(x=2;x<n;x++){
                        for (y=2;y<=(x/y);y++)
                        if (!(x%y)) break;
                        if (y>(x/y)) cout << x << " -prost. number\n";
                        }
                       getchar ();
                       return 0;
                        }
Простые парные
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
      main() 
  { 
      int number; 
      int num1, num2; 
      int i,p;
      int max_i = number/2;
      for( i=1 ; i <= max_i ; ++i ) {
         if( is_prime(i) && is_prime(number-i) ) {
            num1 = i;
            num2 = number-i;
            break;
            void is_prime( int i)
            {
                 return(factorialMod(i-1,i)+1)%i==0;
         }
      }
}
Взаимно простые:
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
#include <iostream.h>
#include <conio.h>
using namespace std;
void gcd (int,int)
void main ()
{
int start,end,a,b;
cout<<"\n start";
cin >> start;
cout<<"\n end";
cin >> end;
for (int i = start; i < (end+1); ++i)
for (int j =(start+1); j < end; ++j)
if (gcd(i,j) == 1) cout<<i<<j;
 
return 0;
void gcd(int i, int j)
{
     while (j!=0)
     j=i%(i=j);
     return i;
}
getch()
}
Так же надо будет сделать что бы все эти три проги были одной ((( а то у меня не как не получалось Пожалусто помогите бедному студенту. )))

 Комментарий модератора 
Давайте темам более осмысленные названия и не забывайте использовать теги форматирования кода.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.02.2011, 22:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос числа из определённого диапазона. (C++):

Range-Based for для определённого диапазона - C++
Добрый вечер, мои хорошие! Вопросик такой... Не знаю простой или нет, но ответа не нашла. Хочу использовать ауто для прохода по...

вывод определённого количества нулей после числа - C++
ПОДСКАЖИТЕ КАК СДЕЛАТЬ ЧТОБЫ ПОСЛЕ ЧИСЛА ВЫВОДИЛОСЬ 4 НУЛЕЙ НАПРИМЕР ЧИСЛО 11 ДОЛЖНО БЫТЬ ЗАПИСАНО КАК 11000 ТО ЕСТЬ ДАНО ЧИСЛО НУЖНО...

Функция, округляющая вещественные числа до определённого количества знаков - C++
Написать функцию, которая округляет любое вещественное число до определённого количества знаков с математической точностью.

Функция floor для округления значения до определённого числа знаков дробной части - C++
Всем привет ребята. кто мог бы объяснить где и что неправильно у меня в коде и как это исправить. Благодарю за внимание. Условие задачи:...

While (нечетные целые числа из диапазона) - C++
1.Напишите программу, которая бы выводила на экран только нечетные целые числа из диапазона от 0 до, указанного пользователем, числа.

Найти все целые числа из диапазона - C++
Здравствуйте ) Пожалуйста, помогите составить программу с помощью побитовых операций... которая позволяет найти все целые числа из...

6
Stas96
34 / 34 / 3
Регистрация: 31.08.2009
Сообщений: 116
02.02.2011, 23:33 #2
Цитата Сообщение от In Da Fly Посмотреть сообщение
Так же надо будет сделать что бы все эти три проги были одной
Это чтобы когда выполнилась первая програ, сразу шла вторая?
Если нет,то можешь поробывать через
C++
1
switch()
Он позволит вам сделать меню, то есть:
1:Поиск простых чисел(Введите 1)
2:
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <iostream>
#include <conio.h>
using namespace std;
 
 
 
void main()
{
    int dp;
    cout << "Proga 1" << endl;
    cout << "Proga 2" << endl;
    cout << "Proga 3" << endl;
    
   cin >> dp;
    
 
    switch(dp)
    {
    case 1:
 
int x,y,n;
cout<<"\n" "n=";
cin >> n;
for(x=2;x<n;x++){
for (y=2;y<=(x/y);y++)
if (!(x%y)) break;
if (y>(x/y)) cout << x << " -prost. number\n";
}
getchar ();
 
        break;
 
    case 2:
//Сюда вставляется код
 
        break;
 
 
 
    case 3:
        //Сюда вставляется код
        break;
 
    }
 
}
 
cin.get();
cin.get();
1
In Da Fly
0 / 0 / 0
Регистрация: 28.05.2010
Сообщений: 22
03.02.2011, 10:25  [ТС] #3
сейчас проверю
0
NNN777
299 / 157 / 19
Регистрация: 27.02.2010
Сообщений: 317
03.02.2011, 10:51 #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
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
#include <iostream>
using namespace std;
 
int prost (int x)
{
    int y;
    for (y=2; y<=x/2; y++)
        if (!(x%y)) 
            return 0;
    return 1;
}
int main()
{
    int i, j, n, k, l;
    cout<<"Enter n: ";
    cin>>n;
    cout<<" 1. Prostye.\n 2. Vzaimnoprostye\n 3. Prostye parnye\n";
    cin>>j;
    switch (j)
    {
        case 1:
            for (i=2; i<n; i++)
            {
                k=prost (i);
                if (k)
                    cout<<"Prostoe chislo: "<<i<<endl;
            }
            break;
        case 2:
            for (i=2; i<n; i++)
            {
                k=prost(i);
                l=prost(i+2);
                if (k && l)
                    cout <<"prost. parn. number "<<i<<" "<<i+2<<endl;
            }
            break;
        case 3:     
            for (j=2; j<n; j++)
                for (i=n; i>j; i--)
                {
                    k=prost(j);
                    l=prost(i);
                    if (k && l)
                        cout <<"vzaimno prost. number "<<j<<" "<<i<<endl;
                }
            break;
 
    }
    return 0;
}
Насчет взаимнопростых есть сомнения...
1
In Da Fly
0 / 0 / 0
Регистрация: 28.05.2010
Сообщений: 22
03.02.2011, 11:07  [ТС] #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
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#include <iostream.h>
#include <conio.h>
using namespace std;
 
 
 
void main()
 
 
        int dp;
        cout << "Proga 1" << endl;
        cout << "Proga 2" << endl;
        cout << "Proga 3" << endl;
        
   cin >> dp;
        
 
        switch(dp)
        {
        case 1:
 
int x,y,n;
cout<<"\n" "n=";
cin >> n;
for(x=2;x<n;x++){
for (y=2;y<=(x/y);y++)
if (!(x%y)) break;
if (y>(x/y)) cout << x << " -prost. number\n";
}
getchar ();
 
                break;
 
        case 2:
  { 
      int number; 
      int num1, num2; 
      int i,p;
      int max_i = number/2;
      for( i=1 ; i <= max_i ; ++i ) {
         if( is_prime(i) && is_prime(number-i) ) {
            num1 = i;
            num2 = number-i;
            break;
            void is_prime( int i)
            {
                 return(factorialMod(i-1,i)+1)%i==0;
         }
      }
}
 
 
                break;
 
 
 
        case 3:
 
int start,end,a,b;
cout<<"\n start";
cin >> start;
cout<<"\n end";
cin >> end;
for (int i = start; i < (end+1); ++i)
for (int j =(start+1); j < end; ++j)
if (gcd(i,j) == 1) cout<<i<<j;
 
return 0;
void gcd(int i, int j)
{
     while (j!=0)
     j=i%(i=j);
     return i;
}
                break;
 
        }
 
}
 
cin.get();
cin.get();
end.
не знаю в чём прикол но когда я хочу запустить программу она не запускает досовское окно тупо скомпилировала и всё ... я пользуюсь DEV-C++ 4.9.9.2 может она плохая и из за неё всё , попробуй у себя запустить её если заработает то скинуть мне нормальный с++.

Добавлено через 1 минуту
и в чём сомнения надо говорить что бы программа нормально работала а не утаивать от всех))

Добавлено через 6 минут
Цитата Сообщение от NNN777 Посмотреть сообщение
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
#include <iostream>
using namespace std;
 
int prost (int x)
{
    int y;
    for (y=2; y<=x/2; y++)
        if (!(x%y)) 
            return 0;
    return 1;
}
int main()
{
    int i, j, n, k, l;
    cout<<"Enter n: ";
    cin>>n;
    cout<<" 1. Prostye.\n 2. Vzaimnoprostye\n 3. Prostye parnye\n";
    cin>>j;
    switch (j)
    {
        case 1:
            for (i=2; i<n; i++)
            {
                k=prost (i);
                if (k)
                    cout<<"Prostoe chislo: "<<i<<endl;
            }
            break;
        case 2:
            for (i=2; i<n; i++)
            {
                k=prost(i);
                l=prost(i+2);
                if (k && l)
                    cout <<"prost. parn. number "<<i<<" "<<i+2<<endl;
            }
            break;
        case 3:     
            for (j=2; j<n; j++)
                for (i=n; i>j; i--)
                {
                    k=prost(j);
                    l=prost(i);
                    if (k && l)
                        cout <<"vzaimno prost. number "<<j<<" "<<i<<endl;
                }
            break;
 
    }
    return 0;
}
Насчет взаимнопростых есть сомнения...
я только что проверил твою программу что ты мне написал , спасибо , но извеняюсь за такой вопрос я её откомпилировал она без ошибок всё нормально , потом запустил её она открылась в дос окне выбрал н и вид числа и она резко вывела в строчку все числа и закрылась , как это можно исправить что бы она не закрывалась .а что бы после нажатия кнопли только тогда закрывалась
0
NNN777
299 / 157 / 19
Регистрация: 27.02.2010
Сообщений: 317
03.02.2011, 11:11 #6
Сомнения в теории, сложно сейчас вспомнить, что такое взаимнопростые числа, а гуглить крайне не хочется)... с этим, думаю, вы и сами справитесь... но вроде как-то так. если окно после запуска сразу вылетает, почитай это http://www.cyberforum.ru/cpp-beginners/thread10807.html
1
In Da Fly
0 / 0 / 0
Регистрация: 28.05.2010
Сообщений: 22
03.02.2011, 11:27  [ТС] #7
спасибо я всё сделал !!! ))

Добавлено через 2 минуты
секундочку я нашёл ошибку в программе когда выбираю 2-ой вид то вместо взаимно парных выдаётся простые парные числа.... неполадочка!!!

Добавлено через 3 минуты
всё я исправил, извиняюсь ))
0
03.02.2011, 11:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2011, 11:27
Привет! Вот еще темы с ответами:

Преобразовать числа из одного диапазона в другой - C++
Нужна функция перевода числа a из -N - N границы в число b из границы 0-6. Например число 50 из границы 0-100 перевести в число x из...

Вывести все числа заданного диапазона кратные 3 и 5 - C++
С клавиатуры вводится диапазон значений. Вывести на экран все числа диапазона, кратные 3 и 5. Помогите решить.

Вывести все кратные 5 числа из заданного диапазона - C++
Помогите решить! У диапазон вводяться два числа, вывести все кратные 5 (если можно, то диапазон нужно задавать через xp, xk)

Выбрать отрицательные числа из диапазона и записать их в файл. - C++
Помогите доделать) написать программу которая считывает текст из файла и записывает в другой файл встречающиеся в тексте отрицательные...


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

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

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