C# C# Basics (Retired) Perfect Final

Ankit Biswas
Ankit Biswas
280 Points

try catch

Add input validation to the below program by printing "You must enter a whole number." if the user enters a decimal or something that isn’t a number.

Wrap all of the code contained in the Main method in a try/catch block The catch block should catch FormatException exceptions Inside of the catch block, output to the console the message "You must enter a whole number."?

Program.cs
using System;

namespace Treehouse.CodeChallenges
{
    class Program
    {
        static void Main()
        {
            Console.Write("Enter the number of times to print \"Yay!\": ");
            string input = Console.ReadLine();
            try
            {
            int count = int.Parse(input);

            int i = 0;
            while(i < count)
            {
                i += 1;   
                Console.WriteLine("Yay!");
            }
            }
                catch(Format Exception)
                {
                    Console.WriteLine("You must enter a whole number.");
                    continue;
                }

        }
    }
}

2 Answers

Pierre Gadea
Pierre Gadea
4,450 Points

I think your problem is this line "catch(Format Exception)", should be catch(FormatException exception). This first word is the type of the exception and the second word is whatever name you want to give it. The int.Parse is the only place in your code that could throw a FormatException so you should not need the "continue" statement in there because if int.Parse() throws an exception it will never reach your while loop.

Ankit Biswas
Ankit Biswas
280 Points

It doesn't work please tell me the full code.

Pierre Gadea
Pierre Gadea
4,450 Points
    try {
               Console.Write("Enter the number of times to print \"Yay!\": ");
                 string input = Console.ReadLine();

                  int count = int.Parse(input);

                   int i = 0;
                   while(i < count)
                    {
                         i += 1;   
                         Console.WriteLine("Yay!");
                     }
      }
      catch (FormatException exception)
                 {
                   Console.WriteLine("You must enter a whole number.");
             }