Главная arrow Язык программирования C# arrow C# Полное руководство Герберт Шилдт arrow Конструкция if-else-if C# Полное руководство Герберт Шилдт

Конструкция if-else-if C# Полное руководство Герберт Шилдт

В программировании часто применяется многоступенчатая конструкция if-else-if, состоящая из вложенных операторов if. Ниже приведена ее общая форма.
if (условие) оператор;
else if (условие) оператор;
else if (условие)
оператор;



else оператор;
Условные выражения в такой конструкции вычисляются сверху вниз. Как только обнаружится истинное условие, выполняется связанный с ним оператор, а все остальные операторы в многоступенчатой конструкции опускаются.
Если ни одно из условий не является истинным, то выполняется последний оператор else, который зачастую служит в качестве условия, устанавливаемого по умолчанию. Когда же последний оператор else отсутствует, а все остальные проверки по условию дают ложный результат, то никаких действий вообще не выполняется.
В приведенном ниже примере программы демонстрируется применение многоступенчатой конструкции if-else-if. В этой программе обнаруживается наименьший множитель заданного целого значения, состоящий из одной цифры.

// Определить наименьший множитель заданного
// целого значения, состоящий из одной цифры.

using System;

   class Ladder {
      static void Main() {
         int num;
 
         for(num = 2; num < 12; num++) {
     if ( (num % 2) ==0)
            Console.WriteLine("Наименьший множитель числа 11 + num + 11 равен 2 . ") ;

         else if ( (num % 3) == 0)
            Console.WriteLine("Наименьший множитель числа 11 + num + 11 равен 3 . ") ;

         else if ( (num % 5) == 0)
            Console.WriteLine("Наименьший множитель числа " + num + " равен 5 . ") ;

         else if ( (num % 7) == 0)
            Console.WriteLine("Наименьший множитель числа " + num + " is 7 . ") ;

     else
         Console .WriteLine (num + " не делится на 2, 3, 5 или 7.");
      }
   }
}

Вот к какому результату приводит выполнение этой программы:
Наименьший множитель числа 2 равен 2
Наименьший множитель числа 3 равен 3
Наименьший множитель числа 4 равен 2
Наименьший множитель числа 5 равен 5
Наименьший множитель числа 6 равен 2
Наименьший множитель числа 7 равен 7
Наименьший множитель числа 8 равен 2
Наименьший множитель числа 9 равен 3
Наименьший множитель числа 10 равен 2
11 не делится на 2, 3, 5 или 7.
Как видите, последний оператор else выполняется лишь в том случае, если не удается выполнить ни один из предыдущих операторов.