Code Wars Intermezzo

Achieve code mastery through challenge

Motivácia

CodeWars je jedným z mnohých webov, ktoré dnes ponúkajú možnosť zlepšiť svoje programátorské schopnosti. Služba CodeWars poskytuje prostredie, v ktorom môžete riešiť rôzne programátorské úlohy (nazývané kata) v rôznych jazykoch a za ich úspešné riešenie získavať body. Máte však aj možnosť vidieť riešenia ostatných, čím sa vaše schopnosti môžu zlepšiť ešte viac. Na dnešnom cvičení sa na túto službu pozrieme zblízka.

CodeWars Logo

Ciele

  1. Zaregistrovať sa v službe CodeWars.
  2. Vyriešiť (aspoň) jeden kata

Postup

Bootstrap

Ešte skôr, ako sa vrhneme do programovania, sa vás niečo opýtame. A to rovno dvakrát. V rámci cvičenia prosím vyplňte nasledovné dva dotazníky:

  1. Motivácia pre štúdium IT (25 min)
  2. Anketa v IS MAIS

Okrem toho sa prosím prihláste do komunikačného systému Slack, ktorý budeme používať v rámci rýchlej komunikácie s vami. Komunikačný kanál predmetu nájdete na adrese https://kpi-pvjc-2024.slack.com.

Codewars Warmup

Skôr, ako sa pustíme do samotného riešenia kata, zaregistrujeme sa.

Úloha

Otvorte vo svojom prehliadači stránku https://www.codewars.com a zaregistrujte sa.

Po kliknutí na tlačidlo Sign Up v pravom hornom rohu stránky sa spustí sprievodca, ktorý vás prevedie procesom registrácie. Najprv si vyberiete programovací jazyk (C/C++). Následne budete vyzvaní, aby ste vyriešili jednoduchú úlohu v tomto jazyku (s ktorou po zvládnutí predmetu Základy algoritmizácie a programovania nemôžete mať žiadny problém). Potom už len dokončíte registráciu vyplnením kontaktných údajov. Ako svoj klan uveďte pvjc-2024.

Let’s Solve Some Kata

Po úspešnej registrácii sa môžeme pokúsiť vyriešiť niekoľko katas a zvýšiť tak svoje hodnotenie.

Úloha

Vyriešte úlohu IP Validation v jazyku C.

Vašou úlohou je napísať funkciu is_valid_ip(), ktorá zistí, či vstupný parameter funkcie predstavuje valídny zápis IP adresy vo verzii 4. Pre jej riešenie však nemôžete použiť žiadnu existujúcu funkciu jazyka C, ktorá je na tento účel priamo určená alebo ktorá nepriamo tento problém vyrieši za vás. Rovnako tak nemôžete použiť na riešenie regulárne výrazy (riešeniu tohto problému pomocou regulárnych výrazov sa budeme venovať neskôr).

Úloha

Po vyriešení úlohy porovnajte svoje riešenie s existujúcimi riešeniami.

Additional Tasks

  1. Riešte ďalšie úlohy na https://codewars.com pre jazyk C.

  2. Pozrite sa na ďalšie systémy a služby, ktoré vám podobným spôsobom ako CodeWars pomôžu byť lepšími programátormi. Pozrieť sa môžete napríklad na tieto služby: