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

Не выполняется условие вложенного цикла - C++

Восстановить пароль Регистрация
 
EfimKR
 Аватар для EfimKR
48 / 21 / 10
Регистрация: 24.06.2014
Сообщений: 210
Записей в блоге: 1
30.06.2014, 14:53     Не выполняется условие вложенного цикла #1
Отладчик показывает что не выполняется условие цикла по j. В чем косяк?

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
/* Вывести простые числа в заданном диапазоне */ 
#include<iostream>
#include<cmath>
using namespace std;
int  main()
{
    setlocale(LC_CTYPE, "Russian");
    int begin=3, end;
    cout<<"Введите число, по которое нужно вывести простые числа\n";
    cin>>end;
    cout<<"\nВ диапазоне от 1 до "<<end<<" простыми являются числа:\n2\t3\t5\t";
    int s=sqrt(end);
    for (int i=4; i<end; i++)
    {
        if (i%2==0) continue;
        else if (i%3==0) continue;
        else
        {
            for (int j=5; j<=s; j++ )
            {
                if (i%j==0) break;
                else if (j==s) cout<<i<<"\t"; 
                else continue;
            }
        }
    }
    cout<<endl;
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
HighPredator
 Аватар для HighPredator
5351 / 1734 / 320
Регистрация: 10.12.2010
Сообщений: 5,120
Записей в блоге: 3
30.06.2014, 14:58     Не выполняется условие вложенного цикла #2
EfimKR, вы какое число вводите с клавиатуры?
EfimKR
 Аватар для EfimKR
48 / 21 / 10
Регистрация: 24.06.2014
Сообщений: 210
Записей в блоге: 1
30.06.2014, 15:05  [ТС]     Не выполняется условие вложенного цикла #3
HighPredator, 20

Добавлено через 4 минуты
HighPredator, нашёл косяк. условие изначально ложно получается.
хотел сэкономить на кол-ве итераций.
zss
Модератор
Эксперт С++
 Аватар для zss
5948 / 5553 / 1785
Регистрация: 18.12.2011
Сообщений: 14,191
Завершенные тесты: 1
30.06.2014, 15:24     Не выполняется условие вложенного цикла #4
Цитата Сообщение от EfimKR Посмотреть сообщение
нашёл косяк.
Это не косяк, а так и должно быть.
5^2=25. Поэтому внутрь цикла попадем при end>25
EfimKR
 Аватар для EfimKR
48 / 21 / 10
Регистрация: 24.06.2014
Сообщений: 210
Записей в блоге: 1
30.06.2014, 15:51  [ТС]     Не выполняется условие вложенного цикла #5
zss, я имел ввиду, нашел почему не попадает внутрь цикла при end=20.
Yandex
Объявления
30.06.2014, 15:51     Не выполняется условие вложенного цикла
Ответ Создать тему
Опции темы

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