Языки программирования

Конструкции принятия решений в 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
  оператор (операторы)
Пример работы оператора:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace test
{
    class Program
    {
        private static int page = 3; //объявляем переменную page и присваиваем значение

        static void Main(string[] args)
        {
            if (page == 1) // если переменная равна 1, тогда будет выполнен эта часть кода
            {
                Console.WriteLine("Первая страница");
            }
            else // иначе будет выполнена данная часть
            {
                Console.WriteLine("Страница: {0}", page);
            }
            Console.ReadKey();

        }
    }
}

switch

Вторым оператором выбора в C# является оператор switch, который обеспечивает многонаправленное ветвление программы. Следовательно, этот оператор позволяет сделать выбор среди нескольких альтернативных вариантов дальнейшего выполнения программы.
Этот оператор действует следующим образом. Значение выражения последовательно сравнивается с константами выбора из заданного списка. Как только будет обнаружено совпадение с одним из условий выбора, выполняется последовательность операторов, связанных с этим условием. Ниже приведена общая форма оператора switch:
switch(выражение) {
case константа1:
последовательность операторов
break;
case константа2:
последовательность операторов
break;
case константаЗ:
последовательность операторов
break;

...

default:
последовательность операторов
break;
}
У оператора switch в C# есть одна особенность: помимо числовых данных он также позволяет производить вычисления и со строковыми данными. Рассмотрим пример:
Console.Write("Введите название ОС: ");
string OS = Console.ReadLine();
switch (OS)
{
  case "Windows":  Console.WriteLine("Хороший выбор!");
  break;
  case "MacOS":  Console.WriteLine("Отличный выбор!");
  break;
  case "Linux":  Console.WriteLine("OpenSource!");
  break;
  default: Console.WriteLine("Я не знаю такую систему!!");
  break;
}
Console.ReadKey();
Здесь всё очень просто! Запустив данный код и написав в консоле название любой ОС оператор выдаст ответ по заданным условиям. Рекомендую самостоятельно потренироваться с операторами для лучшего понимания этой темы.
2023-11-21 16:23 Самоучитель по C#