

Часть 3 - Условные Операторы
Текст: Exolent [jNr]
Перевод с английского: Michael B. - cs.proamd.net
Основы.
Условный оператор - оператор, который решает, продолжить ли блок программы.
Условные операторы могут быть объединены с “and” и “or” символами.
&& символ, используемый для “and”
|| символ, используемый для “or”
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | Код: //"x" больше или меньше 0, или равен 255 x> 0 || x < = 255 //"x" больше чем 15, и "y" - меньше чем 10 x> 15 && y <10 //"x" - меньше чем 15 //или "y" - меньше чем 0, и "y" больше чем -10 x <15 || y <0 && y>-10 //"x" больше чем 16 //"y" больше чем 10, или "y" - меньше чем 0 x> 16 && (y> 10 || y <0) // всё, что больше чем "b" и "c" будет меньше, чем "d" и "e" - меньше чем "f" a> b && c <d && e <f |
У неравенств есть одно значение, при котором мы можем использовать разный формат.
1 2 3 4 5 6 7 | Код: //"x" больше или меньше 0, или равен 5 x> 0 && x < = 5 //Оно может быть двусторонним неравенством (так легче запомнить) 0 <x <= 5 |
Это “двустороннее неравенство” будет работать, только если появится определенный диапазон значений.
Неравенство не будет работать при таком раскладе:
Код:
//”x” больше чем 5 или меньше чем 0
x> 5 || x <0[/cc]
Условные операторы могут также проверить, не является ли оно приблизительной истиной.
! противоположный
! = означает не равный
1 2 3 4 5 6 7 | Код: //"x" - не меньше чем 0 ! (x <0) //"x" не равен 0 x! = 0 |
Дальше они будут всё труднее, и с “противоположным” оператором вы можете переключить условное выражение.
1 2 3 4 5 6 7 8 9 10 11 | Код: //"x" больше чем 0, и "y" - меньше чем 2 x> 0 && y <2 //то же самое, что и выше, но с "противоположным" оператором ! (x < = 0 || y> = 2) //этот условный оператор читается как: //если x < = 0, то оно будет ложное //если y> = 2, то оно будет ложное //иначе, всё будет истинно потому что x> 0 и y <2 |
“If” Операторы
“If” - условный оператор, оператор, который решает, продолжить ли блок программы.
Очень простой в использовании.
Пример:
1 2 3 4 5 6 | Код: if( [conditional] ) { } |
1 2 3 4 5 6 | Код: if( x > 1 ) { } |
Наряду с “if” есть “else if” и оператор “else”.
“Else if” используется, когда первый “if” оператор - ложный.
У него есть еще один формат, который стоит наряду с “if” и пишется перед ним.
1 2 3 4 5 6 7 8 9 10 | Код: if( [conditional #1] ) { } else if( [conditional #2] ) { } |
“If” используется, когда все другие “if” и “else if” операторы - ложные.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | Код: if( [conditional #1] ) { } else if( [conditional #2] ) { } else { } |
Циклы.
Есть 3 различных цикла, которые вы можете сделать:
*while
* do, while
* for
Список упорядочен в порядке усложнения.
“В то время как” цикл продолжит работать, пока условный данный оператор является истиной.
Формат:
1 2 3 4 5 6 | Код: while( [conditional] ) { } |
Как оно работает:
1. Проверьте условного оператора
2. Если он правильный, начните выполнять внутренний блок программы; если ложный - выйдите из цикла
3. Перепроверьте пункт #1
“Do, while” цикл - почти такой же как и “while”.
Единственное различие - порядок, в котором он используется.
Пример:
1 2 3 4 5 6 7 | Код: do { } while( [conditional] ); |
Как оно работает:
1. Выполните блок программы
2. Проверьте условного оператора
3. Если он правильный - выполните внутренний блок программы; если ложный, выйдите из цикла
4. Вернитесь к пункту #2
“For” цикл, более сложный чем другие.
Он главным образом используются, для расчета от одного числа до другого.
В нём содержится 3 части: Initial, условное выражение, увеличение.
Initial - Создание переменных, чтобы использовать их для цикла.
Условное выражение - оператор Conditional, чтобы проверить, должен ли цикл продолжаться.
Увеличение - увеличение значения переменной, которая была создана.
Пример:
1 2 3 4 5 6 | Код: for( [initial]; [conditional]; [increment] ) { } |
Каким боком оно работает:
1. Выполните “initial”
2. Если условное выражение истинно - выполните код; если ложно - выйдите из цикла
3. Выполните блок программы
4. Выполните увеличение
5. Вернитесь к пункту #2
Пример, расчета от 1 до 5:
1 2 3 4 5 6 | Код: for( new i = 1; i < = 5; i++ ) { } |
Пример, расчета от 10 до 1:
1 2 3 4 5 6 | Код: for( new i = 10; i >= 1; i-- ) { } |
Циклы могут быть вынуждены пропустить части кода и возвратиться к условному выражению, с “continue” оператором.
Пример:
1 2 3 4 5 6 7 8 9 10 11 | Код: for( new i = 0; i < 4; i++ ) { if( i == 2 ) { continue; } } |
Циклы могут также быть вынуждены выйти, даже когда условное выражение - истинно.
Пример:
1 2 3 4 5 6 7 8 9 10 | Код: for( new i = 0; i < 4; i++ ) { if( i == 2 ) { break; } } |
Операторы “Switch”
Операторы переключения [switch] используются для сравнения отдельного числа, с двумя или более специфичными значениями, которые заканчиваются различными действиями.
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | Код: switch( variable ) { case VALUE_1: { } case VALUE_2: { } case VALUE_3: { } } |
Есть другая опция, которая будет использоваться, если любое из других значений записано не верно.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | Код: switch( variable ) { case VALUE_1: { // variable is equal to VALUE_1 } case VALUE_2: { // variable is equal to VALUE_2 } case VALUE_3: { // variable is equal to VALUE_3 } default: { // variable is not VALUE_1, VALUE_2, or VALUE_3 } } |