Всем привет. Цикл — разновидность управляющей конструкции в высокоуровневых языках программирования, предназначенная для организации многократного исполнения набора инструкций. А сегодня рассмотрим оператор цикла while (переводится — в то время как).
While по своей конструкции очень похож на if, который мы рассматривали на предыдущем уроке.
Структура: while(условие) тело цикла; Рассмотрим на примере:
#include
int main () {
int a=5;
while (a<=10) {
printf ("a=%d\n", a);}
return 0;
}
Результат выполнения:
а=5 а=5 а=5 и тд до бесконечности.
То есть цикл повторяется до тех пор, пока условие истинно. А так как значение переменной а не меняется, то условие всегда истинно.
Для того, чтобы пропустить цикл, нам нужно условие сделать ложным:
#include
int main () {
int a=5;
while (a<=10) {
printf ("a=%d\n", a);
a++;}
return 0;
}
Результат выполнения:
a=5 a=6 a=7 a=8 a=9 a=10
Программа очень похожа на предыдущую, за исключением седьмой строки, где мы увеличиваем значение переменной на одну единицу. То есть выполняясь седьмой раз, значение переменной а будет равно 11, соответственной она больше 10 (ложь) и цикл прекратит работу.
В языке Си так же существует такие логические операторы:
- ! — не
- || — или
- && — и
- != — исключение или
- == — эквивалентно
Пример использования логического оператора:
#include
int main () {
int a=5, b=17;
while (a!=10 && b==17) {
printf ("a!=10 и b==17\n");
a++;
b=b+a;}
while (a!=10 || b<=10){ printf ("a!=10 или b<=10\n");
return 0;}
return 0;
}
Д/З:
1. Проанализируйте работу последней программы.
2. Напишите программу которая переводит оценку из 100 бальной системы в 5 бальную при условии: 30 и менее 1, 31-50 — 2, 51-72 -3, 73-86 -4 , 87-100 — 5.