Как использовать if..else только для положительных целых чисел
Я хочу использовать оператор if..else, чтобы принимать только положительные целые числа без необходимости catch(formatException)
Что я уже пробовал:
//ExceptionHandling.cs //write a program not catching every exception using System; class ExceptionHandling { static void Main(string[] args) { bool continueLoop = true; do { try { Console.WriteLine("Enter the first integer to add:"); int a = Int32.Parse(Console.ReadLine()); Console.WriteLine("Enter second integer to add:"); int b = Int32.Parse(Console.ReadLine()); int sum = a + b; if(a < 0) { Console.WriteLine("Please enter a non-negative integer:", a); Console.ReadLine(); } if (b < 0) { Console.WriteLine("\nPlease enter a non-negative integer:", b); Console.ReadLine(); } Console.WriteLine("\nTotal is {0}", sum); continueLoop = false; }//end try catch (FormatException formatException) { Console.WriteLine("\n" + formatException.Message); Console.WriteLine("Please enter an integer and try again. \n"); }//end catch } while (continueLoop); //end do-while Console.WriteLine("\nPress enter to exit."); Console.ReadLine(); } }
NotPolitcallyCorrect
Использовать Метод Tryparse
Philippe Mori
Вы действительно хотите снова спросить оба числа, если одно отрицательное?