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

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

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.90
wild_flower
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 36
14.09.2010, 23:12     простые числа в заданном диапазоне #1
помогите пожалуйста написать программку...я все уже тут посмотрела, никак не могу реализовать её
Найти все простые числа заданном диапазоне(не массив), например вводим а=5, в=30 -в этом диапазоне найти простые числа. Использовать только цикл, может условия какие. больше никаких прибамбасов нельзя, не прошли) на С++
очень прошу, уже битый час мучаюсь...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
15.09.2010, 00:26     простые числа в заданном диапазоне #21
wild_flower, От 0 до 1 то есть если?) Ну да. Сейчас добавлю

Добавлено через 2 минуты
Поправил. Если i=1 переходим к следующей итерации цикла. Код выше. А так же с нулем залатал. Ну и с отрицательными.

Добавлено через 5 минут
Финальный вариант. Если i<=1 переходим к следующей итерации цикла.

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
#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++)//Цикл от a до b
{
    if(i<=1)
       continue;
    int cnt=0;//Заводим новую переменную типа int. Присваиваем начальное значение 0.
    for(int j=2; j<=i/2; ++j)//от 2 до i/2. Начинаем от двух, так как любое число делится на 1, и если число делится на 1, оно остается простым. Следовательно проверять смысла нет. Идем до i/2 потому как больше чем i/2 делителя у числа i быть не может. Для 34 - максимум 17, для 28 - максимум 14 и т.д. Само число всегда делится на само себя, поэтому мы не идем циклом до i а заканчиваем если j=i/2.
    {
         if(i%j==0)//Если остаток от деления i на j = 0
         {
            cnt=1;//cnt=1;
            break;//Выходим из цикла по j. Выходим на проверку условия if(cnt==0). Следовательно если сnt=1 - ничего не печатает.
         }
    }
    if(cnt==0)//Если число i не делилось ни на какое число j без остатка, то есть cnt=0
       std::cout<<i<<'\n';//Печатаем i
}
std::cin.get();//Пока не нажмем клавишу программа не завершится (то есть окно консоли не закроется сходу).
return 0; 
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
wild_flower
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 36
15.09.2010, 00:28  [ТС]     простые числа в заданном диапазоне #22
Lavroff, в 19 строчке cnt=1 это просто переменная равна 1? неа если вводим а=1 то потом прога стоит и все
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
15.09.2010, 00:29     простые числа в заданном диапазоне #23
wild_flower, А b то вводить не забываем, м?
ЗЫ Да просто приравниваем переменную 1. Там можно еще break поставить
Выше с break. Разбор с 1 вроде там тоже есть. Или вы вводите 1 1?)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.09.2010, 00:48     простые числа в заданном диапазоне
Еще ссылки по теме:

C++ Найти простые числа в диапазоне от 1 до 1000
C++ Найти все числа в заданном диапазоне, которые делятся на любую из своих цифр
Найти числа фибоначчи в заданном диапазоне методом итерации C++

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

Или воспользуйтесь поиском по форуму:
wild_flower
0 / 0 / 0
Регистрация: 14.09.2010
Сообщений: 36
15.09.2010, 00:48  [ТС]     простые числа в заданном диапазоне #24
Lavroff, ладно, взрыв мозга)) спасибо огромное... с меня шоколадка!!!
Yandex
Объявления
15.09.2010, 00:48     простые числа в заданном диапазоне
Ответ Создать тему
Опции темы

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