Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Osorgin.docx
Скачиваний:
55
Добавлен:
17.12.2018
Размер:
207.23 Кб
Скачать

10. Конструкция if else в языке Ява, синтаксис, пример использования.

Условный оператор if…else позволяет проверить определенное условие и, в зависимости от его истинности, выполнить ту или иную последовательность операторов. Он имеет две формы:

if (условие) оператор1

if (условие) оператор1 else оператор2

Здесь условие — это любое выражение, значение которого может быть преобразовано к логическому типу, оператор1 и оператор2 — любые группы операторов JavaScript; если эти группы содержат более одного оператора, то они должны быть заключены в фигурные скобки {}.

Первая форма оператора означает, что если значение условия истинно, то выполняются операторы1; если оно ложно, то управление передается оператору, следующему за if.

Вторая форма оператора означает, что если значение условия истинно, то выполняются операторы1; если оно ложно, то выполняются операторы2.

Пример использования условного оператора в теле функции, возвращающей наибольшее из трех чисел:

function maxValue(x, y, z) {

if (x >= y) {

if (x >= z)

return x;

else

return z;

}

else {

if (y >= z)

return y;

else

return z;

  1. Численные и аналитические методы. Сходства и отличия (см. 6 вопрос )

12. Конструкция while в языке Ява, синтаксис, пример использования.

В Java есть три циклические конструкции: while, do-while и  for.

Цикл while - это основная циклическая конструкция в Java. Этот цикл многократно выполняется до тех пор, пока значение логического выражения равно true. Ниже приведена общая форма оператора while:

[ инициализация; ] while ( завершение) { тело; [итерация;] }

Инициализация и итерация необязательны. Пока значение логического выражения равно true, продолжается выполнение тела цикла. Ниже приведен пример цикла while для печати пяти строк «while».

class WhileDemo { public static void main(String args[]) { int n = 5; while (n > 0) {                System.out.println("while " + n);                  n--;             }   } }

В результате исполнения программы вы получите следующий результат:

while 5 while 4 while 3 while 2 while 1

  1. Условный оператор в языке Ява, синтаксис, пример использования.

Условный оператор (if-then-else statement) в языке Java записывается так:

if (логВыр) оператор1 else оператор2

и действует следующим образом. Сначала вычисляется логическое выражение логвыр. Если результат true, то действует оператор! и на этом действие условного оператора завершается, оператор2 не действует, далее будет выполняться следующий за if оператор. Если результат false, то действует оператор2, при этом оператор,! вообще не выполняется.

Условный оператор может быть сокращенным (if-then statement):

if (логВыр) оператор!

и в случае false не выполняется ничего.

Синтаксис языка не позволяет записывать несколько операторов ни в ветви then, ни в ветви else. При необходимости составляется блок операторов в фигурных скобках. Соглашения "Code Conventions" рекомендуют всегда использовать фигурные скобки и размещать оператор на нескольких строках с отступами, как в следующем примере:

if (а < х) {

х = а + b; } else {

х = а — b; 

}

Это облегчает добавление операторов в каждую ветвь при изменении алгоритма. Мы не будем строго следовать этому правилу, чтобы не увеличивать объем книги.

Очень часто одним из операторов является снова условный оператор, например:

if (п == 0}{ 

sign = 0;

} else if (n < 0){

sign = -1; 

} else { 

sign = 1;

}

При этом может возникнуть такая ситуация ("dangling else"):

int ind = 5, х = 100;

if (ind >= 10) if (ind <= 20) x = 0; else x = 1;

Сохранит переменная х значение юо или станет равной 1? Здесь необходимо волевое решение, и общее для большинства языков, в. том числе и Java,. правило таково: ветвь else относится к ближайшему слева услдвиюif, не имеющему своей ветви else. Поэтому в нашем примере переменная х останется равной юо.

Изменить этот порядок можно с помощью блока:

if (ind > 10) {if (ind < 20) x = 0; else x = 1;}

Вообще не стоит увлекаться сложными вложенными условными операторами. Проверки условий занимают много времени. По возможности лучше использовать логические операции, например, в нашем примере можно написать

if (ind >= 10 && ind <= 20) х = 0; else х = 1;

В листинге 1.4 вычисляются корни квадратного уравнения ах 2 + bх + с = 0 для любых коэффициентов, в том числе и нулевых.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]