Gyakorlat – Logikai értékek visszaadása metódusokból

Befejeződött

A logikai visszatérési típusokkal rendelkező metódusok lehetnek egyszerűek, de hasznosak a kód összevonásában. Az értékeket visszaadó bool metódusok meghívhatók az adatbevitel kiértékelésére bárhol, utasításokban if , változó deklarációkban stb. Ebben a gyakorlatban tapasztalatot szerezhet a logikai visszatérési típusú metódusok létrehozása és használata során.

Logikai értéket visszaadó metódus létrehozása

Tegyük fel, hogy egy kódolási interjúban jelölt. A kérdező azt akarja, hogy ellenőrizze, hogy több szó egy palindrome. A szó egy palindrome, ha ugyanazt olvassa visszafelé és előre. A szó racecar például palindrome. Lássunk is hozzá!

  1. A Visual Studio Code Editorban törölje a meglévő kódot az előző gyakorlatokból.

  2. Írja be a következő kódot a Szerkesztőbe:

    string[] words = {"racecar" ,"talented", "deified", "tent", "tenet"};
    
    Console.WriteLine("Is it a palindrome?");
    foreach (string word in words) 
    {
        Console.WriteLine($"{word}: {IsPalindrome(word)}");
    }
    

    Ez a kód létrehoz néhány tesztesetet, és hivatkozik egy nevű IsPalindromemetódusra. A metódus szavai és kimenete az IsPalindrome utasításokban lesz kinyomtatva Console.WriteLine .

  3. Adjon meg egy új üres kódsort, és hozzon létre bool metódust a következő kód beírásával:

    bool IsPalindrome(string word) 
    {
        return true;
    }
    
  4. Gondolja át, hogyan ellenőrizheti, hogy egy szó palindrome-e.

    Az ellenőrzés egyik módja a szó első és utolsó betűinek összehasonlítása. Ha egyeznek, hasonlítsa össze a szó második és az utolsó előtti betűt. Ha eléri a szó közepét, akkor az összes betűt összehasonlítottuk és megfeleltettük. Ha a betűk nem egyeznek, a szó nem palindrome.

  5. Frissítse a metódust IsPalindrome a következő kóddal:

    bool IsPalindrome(string word) 
    {
        int start = 0;
        int end = word.Length - 1;
    
        while (start < end) 
        {
            if (word[start] != word[end]) 
            {
                return false;
            }
            start++;
            end--;
        }
    
        return true;
    }
    

    Figyelje meg a változókat start , és end mutasson a sztring első és utolsó karakterére. A hurok megszakad, amikor a szó közepe teljesül; mikor start és end mutasson ugyanarra a karakterre vagy keresztre egymás felett. Az egérmutatók befelé vannak mozgatva minden alkalommal, amikor egyezés van. Ha nem egyeznek, a metódus leáll, és visszaadja a függvényt false.

    Most a metódus sikeresen ellenőrzi, hogy egy szó palindrome-e, és visszaadja true vagy false ennek megfelelően.

Ellenőrizze munkáját

Ebben a feladatban futtatja az alkalmazást az integrált terminálról, és ellenőrzi, hogy a kód megfelelően működik-e. Lássunk neki!

  1. Mentse a munkáját a CtrlS + vagy a Visual Studio Code File menüvel.

  2. Szükség esetén nyissa meg a Visual Studio Code integrált terminálpaneljét.

    Az EXPLORER panelen nyissa meg a Terminált a TestProject mappa helyén, kattintson a jobb gombbal a TestProject elemre, majd válassza a Megnyitás az integrált terminálban lehetőséget.

  3. A Terminál parancssorában írja be a dotnet run

  4. Ellenőrizze, hogy a kód a következő kimenetet hozza-e létre:

    Is it a palindrome?
    racecar: True
    talented: False
    deified: True
    tent: False
    tenet: True
    

    Ha a kód eltérő eredményeket jelenít meg, a hiba megkereséséhez és a frissítések elvégzéséhez át kell tekintenie a kódot. Futtassa újra a kódot, és ellenőrizze, hogy kijavította-e a problémát. Folytassa a kód frissítését és futtatását, amíg a kód meg nem hozza a várt eredményeket.