Материал предоставлен http://it.rfet.ru

Использование кодовых блоков

Еще одним важным элементом C# является кодовый блок, который представляет собой группу операторов. Для его организации достаточно расположить операторы между открывающей и закрывающей фигурными скобками. Как только кодовый блок будет создан, он станет логическим элементом, который можно использовать в любом месте программы, где применяется одиночный оператор. В частности, кодовый блок может служить адресатом операторов if и for.

Рассмотрим следующий оператор if.

if (w < h)   {
  v = w * h;
  w = 0;
}

Если в данном примере кода значение переменной w меньше значения переменной h, то оба оператора выполняются в кодовом блоке. Они образуют внутри кодового блока единый логический элемент, причем один не может выполняться без другого. Таким образом, если требуется логически связать два (или более) оператора, то для этой цели следует создать кодовый блок. С помощью кодовых блоков можно более эффективно и ясно реализовать многие алгоритмы.

Ниже приведен пример программы, в которой кодовый блок служит для того, чтобы исключить деление на нуль.

// Продемонстрировать применение кодового блока.

using System;

class BlockDemo {
  static void Main() {
    int i, j, d;

    i = 5;
    j = 10;

    // Адресатом этого оператора `if` служит кодовый блок.
    if (i != 0) {
      Console.WriteLine("i не равно нулю");
      d = j / i;
      Console.WriteLine("j / i равно " + d);
    }
  }
}

Вот к какому результату приводит выполнение данной программы.

i не равно нулю
j  / i равно 2

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

Рассмотрим еще один пример, где кодовый блок служит для вычисления суммы и произведения чисел от 1 до 10.

// Вычислить сумму и произведение чисел от 1 до 10.

using System;

class ProdSum {

  static void Main() {
    int prod;
    int sum;
    int i;

    sum = 0;
    prod = 1;

    for (i = 1; i <= 10; i++) {
      sum = sum + i;
      prod = prod * i;
    }

    Console.WriteLine("Сумма равна " + sum);
    Console.WriteLine("Произведение равно " + prod);
  }
}

Ниже приведен результат выполнения данной программы.

Сумма равна 55
Произведение равно 3628800

В данном примере внутри кодового блока организуется цикл для вычисления суммы и произведения. В отсутствие такого блока для достижения того же самого результата пришлось бы организовать два отдельных цикла.

И последнее: кодовые блоки не снижают эффективность программ во время их выполнения. Иными словами, наличие символов { и }, обозначающих кодовый блок, никоим образом не замедляет выполнение программы. В действительности применение кодовых блоков, как правило, приводит к повышению быстродействия и эффективности программ, поскольку они упрощают программирование определенных алгоритмов.

Оператор циклаТочка с запятой и оформление исходного текста программы