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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.90
wild_flower
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 36
#1

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

14.09.2010, 23:12. Просмотров 3113. Ответов 23
Метки нет (Все метки)

помогите пожалуйста написать программку...я все уже тут посмотрела, никак не могу реализовать её
Найти все простые числа заданном диапазоне(не массив), например вводим а=5, в=30 -в этом диапазоне найти простые числа. Использовать только цикл, может условия какие. больше никаких прибамбасов нельзя, не прошли) на С++
очень прошу, уже битый час мучаюсь...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.09.2010, 23:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос простые числа в заданном диапазоне (C++):

Найти все простые числа в заданном диапазоне - C++
Найти все простые числа в промежутке между натуральными числами а и b (а > 2000, b - а ≥ 20)

Найти простые числа в заданном диапазоне (циклы) - C++
Найти простые числа в диапазоне от 2 до 1000 цикл в цикле с помощью циклов for

Найти все простые числа в заданном диапазоне и вывести их на экран - C++
Доброго времени суток! Есть задачка, есть кривое решение. :) Суть задачки такова: найти все простые числа до 1000 и вывести их на...

Найти простые числа в заданном диапазоне с помощью решета Эратосфена - C++
Задача: вывести простые числа в диапозоне от А до В. ( 2 ≤ А и ≤ В ≤ 100000 ) Если таких чисел нет - вывести "Fol". Желательно с...

Вывести все простые числа в заданном диапазоне, которые являются палиндромами - C++
Напишите программу , которая выводит все простые числа , которые являются палиндромами ( то есть имеют симметричную запись в десятичной...

Найти простые числа в заданном диапазоне с помощью решета Эратосфена и вывести их в файл - C++
Для зачета задали написать программу для нахождения простых чисел от 1 до 1000000000 и вывод их в файл,чтобы программа делала все это...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Crudelis
Шаровик затейник
672 / 414 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
14.09.2010, 23:18 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<iostream>
using namespace std;
void main()
{
int a=0,b=0;
cout<<"a=";
cin>>a;
cout<<"b=";
cin>>b;
for(int i=a;i<=b;i++)
cout<<i<<"\t";
cout<<endl;
 
}
Если я правильно понял условие то как то так
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
14.09.2010, 23:25 #3
Crudelis, Посмотрите определение простых чисел. На всякий случай.
wild_flower
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 36
14.09.2010, 23:27  [ТС] #4
почему присваем int a=0,b=0; и я так понимаю что мы вводим потом какие то а и в, далее идет цикл и просто выводит нам i? и у меня вышла ошибочка.....
простые числа те которые делятся только на себя...и на единицу, у них нет доп делителей
2,3,5,7,11,13,17
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
14.09.2010, 23:30 #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
#include<iostream>
 
bool simple(int a)
{
    int cnt=0;
    for(int i=2; i<=a/2; ++i)
        if(a%i==0)
           cnt++;
    if(cnt)
       return false;
    else
       return true;
}
 
int main()
{
int a=0,b=0;
std::cout<<"a=";
std::cin>>a;
std::cout<<"b=";
std::cin>>b;
for(int i=a;i<=b;i++)
    if(simple(i)) 
         std::cout<<i<<'\n';
std::cout<<std::endl;
return 0; 
}
wild_flower
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 36
14.09.2010, 23:34  [ТС] #6
Lavroff, спасибо, ну тут столько не понятных символов, мы даже не знаем что это такое))) можно комменты)
Crudelis
Шаровик затейник
672 / 414 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
14.09.2010, 23:35 #7
Цитата Сообщение от wild_flower Посмотреть сообщение
почему присваем int a=0,b=0;
инициализация а и б нулем при создании это как бы само защита от того что при создании в них не будет мусора, если вдруг забудете далее в программе ввести их с клавиатуры

Добавлено через 1 минуту
Lavroff, я думаю что функции они ещё не проходили, если задача только на цикл
wild_flower
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 36
14.09.2010, 23:36  [ТС] #8
Crudelis, клево)) он выводит числа все...вообще супер!!! а как теперь из них простые вывести))?
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
14.09.2010, 23:39 #9
Хм.. Ну вот без функций...

Перед функциями cout, cin и пр. можно убрать std, если раскоментировать строчку using namespace std;

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>
 
//using namespace std;
 
int main()//main
{
int a=0,b=0;
std::cout<<"a=";//std::cout==cout
std::cin>>a;//std::cin==cin
std::cout<<"b=";
std::cin>>b;
for(int i=a;i<=b;i++)//От а до б включительно
{
    bool cnt=false;//Флажок устанавливаем в false
    for(int j=2; j<=i/2; ++j)//От 2 до i/2
    {
         if(i%j==0)//i делится без остатка на j
            cnt=true;//Ставим флажок в true
    }
    if(cnt==false)//Если флажок false
       std::cout<<i<<'\n';//Печатаем i
}
return 0;//Возвращаем ноль 
}
Crudelis
Шаровик затейник
672 / 414 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
14.09.2010, 23:42 #10
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<iostream>
using namespace std;
void main()
{
int a=0,b=0;
cout<<"a=";
cin>>a;
cout<<"b=";
cin>>b;
for(int i=a;i<=b;i++){
 
int cnt=0;
    for(int j=2; j<=i/2; ++i){
        if(i%j==0)
           cnt++;}
      if(!cnt)
         cout<<i<<"\t";
   }
}
cout<<endl;
 
}
Добавлено через 28 секунд

Не по теме:

Опоздал

wild_flower
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 36
14.09.2010, 23:49  [ТС] #11
Crudelis, спасибо огромное, но че т он мне подчеркивает i выдает ошибку
Crudelis
Шаровик затейник
672 / 414 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
14.09.2010, 23:52 #12
wild_flower, да что я.... вы лучше спасибо скажите Lavroff вон он какую работу проделал, даже закоментил код)

Добавлено через 1 минуту
wild_flower, какую именно ошибку выдает? скопируйте сюда
wild_flower
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 36
14.09.2010, 23:52  [ТС] #13
Lavroff, спасибо огромное) у вас чем то похожи програмки, но увас выдает ошибку в 18 строке -подчеркивает (cnt)
Crudelis
Шаровик затейник
672 / 414 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
14.09.2010, 23:56 #14
wild_flower, у меня нормально компилиурется и работает программа что дал Lavroff
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
14.09.2010, 23:58 #15
Как это? оО. Вы точно в С++ работаете? Булевскую переменную то он с фигали подчеркивает? Ну ладно...

А так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<iostream>
 
int main()
{
int a=0,b=0;
std::cout<<"a=";
std::cin>>a;
std::cout<<"b=";
std::cin>>b;
for(int i=a;i<=b;i++)
{
    int cnt=0;
    for(int j=2; j<=i/2; ++j)
    {
         if(i%j==0)
            cnt=1;
    }
    if(cnt==0)
       std::cout<<i<<'\n';
}
return 0; 
}
Добавлено через 1 минуту
Сишный стиль объявления переменных... проверьте это...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<iostream>
 
int main()
{
int a=0,b=0, cnt, i;
std::cout<<"a=";
std::cin>>a;
std::cout<<"b=";
std::cin>>b;
for(i=a;i<=b;i++)
{
    cnt=0;
    for(int j=2; j<=i/2; ++j)
    {
         if(i%j==0)
            cnt=1;
    }
    if(cnt==0)
       std::cout<<i<<'\n';
}
return 0; 
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.09.2010, 23:58
Привет! Вот еще темы с ответами:

простые числа в диапазоне.. - C++
задача-вывести все простые числа в диапазоне от М до N (диапазон с клавиатуры) может быть есть простой более метод нахождения...

Вывести все простые числа в диапазоне от a до b - C++
Напишите программу , которая вводит натуральные числа a и b и выводит все простые числа в диапазоне от a до b . Здравствуйт, помогите...

Найти простые числа в диапазоне от 1 до 1000 - C++
Задание звучит так Написать программу поиска простых чисел из множества натуральных чисел от 1 до 1000 и записи их в массив. Записать на...

Найти все простые числа в диапазоне - C++
Вообщем, такая дилемма, С++ только начали, уже задали задачу: пользователь вводит начало и конец диапазона, нужно вывести все простые...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
14.09.2010, 23:58
Ответ Создать тему
Опции темы

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