try — catch — finally

Исключительная ситуация или исключение — это ошибка, которая возникает во время выполнения программы.
В языке C# все исключения являются объектами класса System.Exception
Код, который помещен в блок finally, выполняется не зависимо от исключения, произошло оно или нет.
Скрыть

Показать

Копировать
  Main.cs  
  • using System;
  •  
  • class One {
  •  string symbol;
  •  decimal a;
  •  decimal b;
  •  public One(string arg0, decimal arg1, decimal arg2) {
  •   symbol = arg0;
  •   a = arg1;
  •   b = arg2;
  •  }
  •  public void Result() {
  •   if(symbol!="+" & symbol!="-" & symbol!="*" & symbol!="/" & symbol!="%") {
  •    throw new Exception("Вы ввели не правильный символ!");
  •   }
  •   else {
  •    try {
  •     if(symbol == "+") {
  •      Console.WriteLine("{0} {1} {2} = {3}", a, symbol, b, (a + b));
  •     }
  •     else if(symbol == "-") {
  •      Console.WriteLine("{0} {1} {2} = {3}", a, symbol, b, (a - b));
  •     }
  •     else if(symbol == "*") {
  •      Console.WriteLine("{0} {1} {2} = {3}", a, symbol, b, (a * b));
  •     }
  •     else if(symbol == "/") {
  •      Console.WriteLine("{0} {1} {2} = {3}", a, symbol, b, (a / b));
  •     }
  •     else if(symbol == "%") {
  •      Console.WriteLine("{0} {1} {2} = {3}", a, symbol, b, (a % b));
  •     }
  •    }
  •    catch(DivideByZeroException exc) {
  •     Console.WriteLine(exc.Message);
  •    }
  •    finally {
  •     Console.WriteLine("Привет Мир!");
  •    }
  •   }
  •  }
  • }
  •  
  • class Program {
  •  public static int Main() {
  •   Console.Write("выберите арифметическое действие + - * / % : ");
  •   string symbol = Console.ReadLine();
  •   Console.Write("введите число : ");
  •   decimal a = decimal.Parse(Console.ReadLine());
  •   Console.Write("введите число : ");
  •   decimal b = decimal.Parse(Console.ReadLine());
  •   One O = new One(symbol, a, b);
  •   O.Result();
  •   Console.ReadKey();
  •   return 0;
  •  }
  • }
выберите арифметическое действие + - * / % : /
введите число : 10
введите число : 0
Попытка деления на нуль.
Привет Мир!