Registrácia | Prihlásiť

Počítačové zadanie: Strojovo orientované jazyky - načítajte zo súboru reťazec znakov ukončený znakom

Skryť detaily | Obľúbený
Náhľady Náhľady
Znenie
Načítajte zo súboru reťazec znakov ukončený znakom "konca súboru".Nech slovo je postupnosť znakov medzi dvoma znakmi "medzera".Určte počet slov obsahujúcich reťazec UNIX. Počet vytlačte desiatkovo.

Dodefinovanie zadania:
Ak sa daný súbor nenájde, program by mal vypísať chybové hlásenie a ukončiť svoju činnosť. Je třeba pamätať nato, že v zadaní sa uvádza určenie počtu slov obsahujúcich raťazec UNIX a nie počet reťazcov UNIX v súbore.

Analýza riešenia:
Keďže máme zistiť počet slov obsahujúcich reťazec UNIX, tak při hľadaní musíme po nájdení slova UNIX nejako zisťovať či sme už prešli do ďalšieho slova. To zistíme ak narazíme na ďalšiu medzeru ktorá nám oznamuje koniec jedného slova a začiatok ďalšieho. Samotný reťazec UNIX vyhľadávame tým spôsobom, že prechádzame súbor po znakoch, až kým nenarazíme na „U“ čo je prvé písmeno tohoto reťazca. Ak ho zistíme, tak preskočíme do ďalšieho úseku programu a zisťujeme prítomnosť zvyšných znakov slova, to je postupne-„N“,“I“ a „X“. Ak nájdeme aj posledný znak tohoto reťazca tak inkrementujem počítadlo. Zároveň při každom novom znaku testujeme, či sa nejedná o koniec súboru. V prípade že áno, vypíšeme počet nájdených reťazcov a program sa ukončí.
Hodnotenie (0x):