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

while : переходит в бесконечный цикл - C++

Восстановить пароль Регистрация
 
Loodly
0 / 0 / 0
Регистрация: 10.10.2011
Сообщений: 27
21.11.2011, 13:22     while : переходит в бесконечный цикл #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<iostream>
#include<conio.h>
using namespace std;
 
int main()
{
    int y,n;
    cout<<"n: ";
    cin>>n;
    cout<<"y: ";
    cin>>y;
    
    while(y<=n)
    cout<<n-1 <<" ";
    
    getch();
    return 0;
}

подскажите плз почему? задача состоит в том чтобы числа шли по -1 , например : 9 8 7 ..
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.11.2011, 13:22     while : переходит в бесконечный цикл
Посмотрите здесь:

Бесконечный цикл C++
Бесконечный цикл C++
C++ Бесконечный цикл
C++ Бесконечный цикл
Бесконечный цикл while C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Bers
Заблокирован
21.11.2011, 13:26     while : переходит в бесконечный цикл #2
Цитата Сообщение от Loodly Посмотреть сообщение
while(y<=n)
cout<<n-1 <<" ";
Цикл будит продолжаться до тех пор, пока у будит меньше, либо равно n
Изначально, игрек меньше.

А в последствии.. Либо игрек нужно увеличить, либо n нужно уменьшить.

Где у вас в теле цикла прописан код, который изменял бы значение хотя бы одной из этих двух переменных?
Сыроежка
Заблокирован
21.11.2011, 14:05     while : переходит в бесконечный цикл #3
Цитата Сообщение от Loodly Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<iostream>
#include<conio.h>
using namespace std;
 
int main()
{
    int y,n;
    cout<<"n: ";
    cin>>n;
    cout<<"y: ";
    cin>>y;
    
    while(y<=n)
    cout<<n-1 <<" ";
    
    getch();
    return 0;
}

подскажите плз почему? задача состоит в том чтобы числа шли по -1 , например : 9 8 7 ..
У вас значение переменной n не меняется. То есть вы в цикле

C++
1
    cout<<n-1 <<" ";
лишь выврдите значение выражения n - 1, еоторое всегда одно и тоже, так как значение самой переменной n остается прежним.
Вам надо написать

C++
1
    cout<< ( n = n-1 ) <<" ";
co6ak
Кошковед
 Аватар для co6ak
403 / 496 / 29
Регистрация: 12.04.2010
Сообщений: 1,392
21.11.2011, 14:16     while : переходит в бесконечный цикл #4
n-- оптимальнее. или --n, по вкусу.
Yandex
Объявления
21.11.2011, 14:16     while : переходит в бесконечный цикл
Ответ Создать тему
Опции темы

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