Задать вопрос
  • Какую ошибку я допустил?

    twobomb
    @twobomb
    Инициализируйте num изначально
    int num = 0;
    P.S. Дело в том что блок finally выполяется в любом случае, а если я введу вместо числа слово из трех букв то сначла отработает кетч на несоотвествие типа, а потом мой *** попытается перевести в дабл и возвести во вторую степень.
    Правильно этот код было бы написать как-то так
    Console.Write("Введите целое число -> ");
                int num;
                try
                {
                    num = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine("Ваше число в квадрате -> " + Math.Pow(Convert.ToDouble(num), 2.0));
                }
                catch (FormatException)
                {
                    Console.WriteLine("Несоответствие типа.");
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                }
    Ответ написан
    Комментировать