Diskuze: Práce se soubory a seřazení podle abecedy
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 3 zpráv z 3.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Není na tom nic těžkého.
Nadefinuješ si velikost pole, jehož smyslem je udržovat hodnoty o počtu slov začínající tím kterým písmenem.
#define N_LETTERS 'z' - 'a' + 1
Dále si inicializuješ toto pole na hodnotu nula
int words[N_LETTERS] = { 0 };
Otevřeš soubor pro čtení, načteš první písmeno a pak vždy další písmeno za dvojtečkou. ASCII hodnotu písmena převedeš na index pole
index = tolower(c) - 'a';
Inkrementuješ daný index pole v závislosti na písmenu
words[tolower(c) - 'a']++;
To celé provádíš dokud nedojdeš na konec souboru. Uzavřeš soubor a vypisuješ na obrazovku písmena následované dvojtečkou a hodnotou na daném indexu. Použiješ for cyklus o počtu opakování rovno N_LETTERS, kde písmeno je dáno již známým vztahem
letter = index + 'a';
a kocháš se hotovým funkčním programem...
Toť vše..
Zobrazeno 3 zpráv z 3.