Нужно добавить исключения в простенькую программу - C#

Узнай цену своей работы

Формулировка задачи:

Вот задание: оптимизировать программу, включив в нее обработку исключительных ситуаций: ввода данных, операции деления и др. Вот уже написанная программа. Добавить нужно что-то вроде try- и catch- блоков.
double x1, x2, x3, y1, y2, y3, a, b, c, p;
            Console.Write("Enter X1:");
            x1 = Convert.ToDouble(Console.ReadLine());
            Console.Write("Enter Y1:");
            y1 = Convert.ToDouble(Console.ReadLine());
            Console.Write("Enter X2:");
            x2 = Convert.ToDouble(Console.ReadLine());
            Console.Write("Enter Y2:");
            y2 = Convert.ToDouble(Console.ReadLine());
            Console.Write("Enter X3:");
            x3 = Convert.ToDouble(Console.ReadLine());
            Console.Write("Enter Y3:");
            y3 = Convert.ToDouble(Console.ReadLine());
            a = Math.Sqrt(Math.Pow(x2 - x1, 2) + Math.Pow(y2 - y1, 2));
            Console.WriteLine("a={0}", a);
            b = Math.Sqrt(Math.Pow(x3 - x2, 2) + Math.Pow(y3 - y2, 2));
            Console.WriteLine("b={0}", b);
            c = Math.Sqrt(Math.Pow(x3 - x1, 2) + Math.Pow(y3 - y1, 2));
            Console.WriteLine("c={0}", c);
            p = (a + b + c);
            Console.WriteLine("p={0}", p);
            Console.ReadKey();

Решение задачи: «Нужно добавить исключения в простенькую программу»

textual
Листинг программы
double x1, x2, x3, y1, y2, y3, a, b, c, p;
            try
            {
                Console.Write("Enter X1:");
                x1 = Convert.ToDouble(Console.ReadLine());
                Console.Write("Enter Y1:");
                y1 = Convert.ToDouble(Console.ReadLine());
                Console.Write("Enter X2:");
                x2 = Convert.ToDouble(Console.ReadLine());
                Console.Write("Enter Y2:");
                y2 = Convert.ToDouble(Console.ReadLine());
                Console.Write("Enter X3:");
                x3 = Convert.ToDouble(Console.ReadLine());
                Console.Write("Enter Y3:");
                y3 = Convert.ToDouble(Console.ReadLine());
            }
            catch (FormatException ex)
            {
                Console.WriteLine("Не правильный формат данных\nНажмите любую кнопку");
                Console.ReadKey();
                return;
            }
            try
            {
                a = Math.Sqrt(Math.Pow(x2 - x1, 2) + Math.Pow(y2 - y1, 2));
                Console.WriteLine("a={0}", a);
                b = Math.Sqrt(Math.Pow(x3 - x2, 2) + Math.Pow(y3 - y2, 2));
                Console.WriteLine("b={0}", b);
                c = Math.Sqrt(Math.Pow(x3 - x1, 2) + Math.Pow(y3 - y1, 2));
                Console.WriteLine("c={0}", c);
                p = (a + b + c);
            }
            catch (ArithmeticException ex)
            {
                Console.WriteLine("Ошибка в арифметической операции "+ex.Message);
                Console.ReadKey();
                return;
            }
            
            Console.WriteLine("p={0}", p);
            Console.ReadKey();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.8 из 5
Похожие ответы