Keresés

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

  • Karma

    félisten

    válasz zsambek #5509 üzenetére

    Ne add fel! Ott vagy a megoldás kapujában, csak kimerített, hogy túl sok újdonság szakadt rád az elmúlt pár órában. És légy még egy kicsit türelemmel, mert imperatívan ez nem megy egy lépésben.

    A legfontosabb alapszabály, amit most be kell tartanod: ne nyúlj a dictionaryhez módosítási szándékkal. A második: ne nyúlj a dictionaryhez módosítási szándékkal. Kőtáblába vésted!

    Azt az előző túra során felépítetted, tedd el biztos helyre, és használd úgy, mint egy papíralapú szótárat szokás: keresgélj benne a címszavak alapján.

    Van egy rendezett kulcslistád. Tudod róla, hogy hossz szerint növekvő sorrendben vannak a kulcsok benne. Akkor hol van a leghosszabb kulcs?

    Természetesen a lista végén ;)
    Szedd elő az utolsó elemet és jegyezd fel a hosszát.

    Utána foreach ciklussal menj végig a kulcsokon, és ha az aktuális kulcs ugyanolyan hosszú, mint az előbb megjegyzett szám, akkor vedd elő a szótárból az ehhez a kulcshoz tartozó szavak listáját, és írd ki a szavakat.

    Próbáld meg leírni C#-ban ezeket a mondatokat.

    --- ez itt a vágás helye ---

    Ha elakadnál, megírom én is:

    int maxLength = orderedKeys[orderedKeys.Count - 1];

    foreach (string key in orderedKeys)
    {
    if (key.Length == maxLength)
    {
    List<string> words = dict[key];
    foreach (string word in words)
    {
    Console.WriteLine(word);
    }
    }
    }

    A hetedik feladat ezután pofonegyszerű, hiszen ugyanez a foreach (in orderedKeys) ciklus kell, és nem kell bele if, csak egy string.Join(). Ja meg fájlba kell írni képernyő helyett.
    Apropó, ha esetleg valami nem fordulna, akkor bocs. Ezt mind fejből írtam, mint az előzőeket is.

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