Új hozzászólás Aktív témák

  • joysefke

    veterán

    válasz Pörp #7925 üzenetére

    Az előző hsz, vagy ez, int.Parse(string)-gel, de itt manuálisan kell elkapni az exceptiont :)

    a bool success változó tárolja, hogy sikeres volt-e a beolvasás, a do-while ciklus addig fog próbálkozni a beolvasással, míg az egyszer sikeres nem lesz. A string -> int átalakítást az int.Parse(string) végzi, ha ez sikeres volt (mert a user tényleg számot adott be), akkor a következő végrehajtott utasítás a success = true; lesz. Ellenkező esetben létrejön egy exception és a végrehajtás a catch(Exception) {...} blokkban folytatódik anélkül, hogy a success változót átállítottuk volna, ebben az esetben a do-while ciklus újra lefut.

    class Program
    {
    static void Main(string[] args)
    {

    int num=0;
    bool success = false;

    do
    {
    Console.Write("Enter number : ");
    string str = Console.ReadLine();

    try
    {
    num = int.Parse(str);
    success = true;
    }
    catch (Exception ex)
    {
    Console.WriteLine("Not a valid number, try again!");

    }
    } while (success != true);

    Console.WriteLine($"You typed in the following number: {num}");

    }
    }

Új hozzászólás Aktív témák

Hirdetés