Конструкции принятия решений в C#.



В С#, кроме циклов есть две конструкции — операторы принятия решений (if/else и switch). Рассмотрим их подробнее:

if/else

Конструкция if/else проверяет истинность некоторого условия и в зависимости от результатов проверки выполняет определенный код.

В C# оператор может работать только с булевскими выражениями, но не с произвольными значениями вроде -1 и 0. Учитывая этот факт, в операторе if/else можно использовать следующие операции сравнения:

  • == — возвращает true, если выражения одинаковые, например, if(page == 5);
  • != — возвращает true, если выражения не равны: if(page !=5);
  • <(<=) - возвращает true, если выражение слева меньше или равно, чем выражение справа: if(price > 100);
  • >(>=) — возвращает true, если выражение слева больше или равно, чем выражение справа, if(price > 200).

Синтаксис оператора:

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

Пример работы оператора:

if (page == 1)
{
   Console.WriteLine("Первая страница");
}
else
{
  Console.WriteLine("Страница: {0}", page);
}
if (page = = 1 && price < 100)
   Console.WriteLine("Дешёвые продукты на первой странице");

switch

Вторым оператором выбора в C# является оператор switch, который обеспечивает многонаправленное ветвление программы. Следовательно, этот оператор позволяет сделать выбор среди нескольких альтернативных вариантов дальнейшего выполнения программы.

Этот оператор действует следующим образом. Значение выражения последовательно сравнивается с константами выбора из заданного списка. Как только будет обнаружено совпадение с одним из условий выбора, выполняется последовательность операторов, связанных с этим условием. Ниже приведена общая форма оператора switch:

switch(выражение) {
case константа1:
последовательность операторов
break;
case константа2:
последовательность операторов
break;
case константаЗ:
последовательность операторов
break;

...

default:
последовательность операторов
break;
}

У оператора switch в C# есть одна особенность: помимо числовых данных он также позволяет производить вычисления и со строковыми данными. Рассмотрим пример:

string OS = "Linux";
switch (OS)
{
  case "Windows":  Console.WriteLine("Хороший выбор!");
  break;
  case "MacOS":  Console.WriteLine("Отличный выбор!");
  break;
  case "Linux":  Console.WriteLine("OpenSource!");
  break;
  default: Console.WriteLine("Я не знаю такую систему!!");
  break;
}

Здесь всё очень просто! Запустив данный код и написав в консоле название любой ОС оператор выдаст ответ по заданным условиям. Рекомендую самостоятельно потренироваться с операторами для лучшего понимания этой темы.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 5,00 из 5)
Загрузка...

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Chinese (Traditional)EnglishJapaneseRussianUkrainian

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: