progs.biz  
Начало>C/C++>Основы C++>Урок 5
C#
VB.NET
Visual C++.NET
ASP.NET
Visual C++ 6
WinAPI
C/C++
Delphi
C++ Builder
Java
SQL
PHP
DirectX
Visual Basic 6.0
Ассемблер
Интернет
Сист. прогр-ние
Pocket PC
Обзор книг
Обзор программ

И. Портянкин. Swing. Эффектные пользовательские интерфейсы
И. Портянкин. Swing. Эффектные пользовательские интерфейсы
Заказать на Озоне



Яндекс-цитирования

C/C++
Урок 5. Циклы while

Циклы while, в отличие от циклов for, предназначены для ситуаций, когда заранее неизвестно, сколько раз цикл должен выполнится.

Циклы while делятся на 2 типа: while и do-while. Принципиальная разница между ними такая - while может не выполнится ни одного раза, do-while выполняется по крайней мере 1 раз. Так что надо смотреть по задаче - если наше действие точно должно один раз выполнится (например при запросе у пользователя пароля), то выбираем do-while.

А вот и конкретный синтаксис:

while(a>0){
    ...//что-то делаем
};

Этот цикл будет выполятся до тех пор, пока a>0. Как только условие в крулых скобках станет ложным, цикл прекратит свою работу. Если же a будет сразу меньше или равно нулю, то цикл вообще ни разу не выполнится.

Пример цикла do-while:

int password;
do{
    cout<<"\nEnter password";
    cin>>password; //Ввод пользователем пароля.
}while(password!=123);

Этот цикл будет выполнятся до тех пор, пока пользователь не введет 123 в качестве пароля. Т. е. его условие продолжения такое же, как у while - пока условие в скобках истинно, цикл продолжает работу.

Обратите внимание, что после слова while условие продолжения цикла мы пишем в общих круглых скобках.

Также обратите внимание, что переменные, влияющие на истинность условия, как-то внутри цикла должны меняться - иначе мы можем оказаться в бесконечном цикле:

int a = 5;
while(a>0)
{
    cout<<"*";//Бесконечный цикл.
}

Здесь всегда a больше 0 и из цикла мы никогда не выйдем.

Рассылки нашего сайта на Subscribe.Ru
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz


 
 
Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2008 сайт progs.biz
© 2002-2008 Игорь Алексеев