Algoritmi

Natjecateljskog si duha? Voliš matematiku? Zanima te rješavanje problema i zagonetki? Tečaj „Algoritmi“ se bavi upravo time.

Algoritam je općenito postupak za rješavanje nekog problema dok se pod računalnim algoritmima misli na precizan niz logički povezanih instrukcija čijim se izvođenjem na računalu rješava neki problem. Ukoliko si početnik u programiranju upiši tečaj „Moj prvi program“ za osnovnoškolce ili „Osnove programiranja za srednjoškolce“, a ukoliko već poznaješ grananje, petlje, funkcije, polja i druge strukture podataka, spreman si za napredne algoritme i natjecanja u programiranju - Infokup i Hrvatsko otvoreno natjecanje u informatici (HONI). U ovim je natjecanjima cilj upravo osmisliti algoritam koji rješava zadani problem. Međutim, zadani problemi su vrlo često složeni, pa je potrebno kombinacijom postojećih i osmišljavanjem novih algoritama doći do efikasnog rješenja.

Za osnovce su planirane 2 skupine. Ona za početnike te ona za naprednije učenike koji već imaju iskustva u programiranju algoritama.

Početna grupa (Algoritmi 1, tj #početni) podrazumijeva upoznavanje s pojmom algoritma, upoznavanje najjednostavnijih problemskih zadataka i metoda rješavanja istih, upoznavanje s Python programskim jezikom i PyCharm programskim alatom, pisanjem svojih prvih pravih programa... Od programskog jezika, planira se upoznati djecu s osnovnim varijablama i funkcijama za unos i ispis podataka te matematičkim funkcijama. Na početku će biti dovoljne za višestruko rješavanje osnovnih problemskih zadataka. Kasnije će djeca naučiti kako se programira grananje (selekcije) te rad s petljama. Slijedi rad s nizovima podataka... No, ono najvažnije je metoda učenja rješavanja zadataka, odnosno, razvijanje analitičko logičkog razmišljanja u djece.

Napredna (Algoritmi 2, tj #napredni) grupa počinje s brzim ponavljanjem gradiva" te time popunjavanjem "ljetnih rupa". Nakon "sinkronizacije" skupine krećemo u rješavanje složenijih algoritama kroz rješavanje problemskih zadataka. Usputno, planskim rješavanjem zadataka učenici proširuju svoje znanje, kako u metodologiji rješavanja zadataka, tako i upoznavanjem s funkcionalnošću jezika Python i C++. U ovisno o grupi, ali i pojedinom učeniku, pripremaju se zadaci te individualan pristup. Svako predavanje posebnost je za tebe, a predavanja su interkativna i iznimno uključuju rad djece. Vrše se aktivne pripreme za natjecanaj HONI i Infokup... Od naprednih tehnika podrazumijevaju se algoritmi sortiranja, binarnog pretraživanja, rada s nizovima i vektorima, pisanjem vlastitih funkcija (rekurzivnih...), za one najnaprednije osnovni algoritmi u teoriji grafova (BFS, DFS, Djikstra, A*...), a nezaobilazni su i metode dinamičkog programiranja... Najvažnije od svega je što ne postoje granice u radu, već se znanja djece proširuju prema njihovom interesu, znanju i mogućnostima. 

Razvijamo snagu tima, kao i svakog pojedinca. Očekujemo od roditelja suradnju poticaju u radu djece. Zajedno, međusobnom suradnjom, vaša djeca iznimno će napredovati.

Osim algoritama, djeca će sve informacije dobivati elektroničkim putem, dobivati materijale, rješenja, upute. Naučiti će koristiti najmodernije alate i tehnike, kako u programiranju, tako i u komunikaciji. Naučit ćemo ih kako biti vješt i snalažljiv u pronalaženju dodatnih spoznaja i rješenja, a sve kako bi ih osposobili da jednog dana sami šire svoje horizonte...

Srednjoškolska skupina (Algoritmi 3) svakako zahtijeva i naprednija algoritamska znanja. U ovom će tečaju djeca naučiti kako brzo sortirati i pretraživati podatke te neke posebne metode poput simulacija, dinamičkog programiranja, pohlepnog pristupa, podijeli pa vladaj, backtrackinga i slično. Upoznat će se s teorijom grafova i vrlo korisnim strukturama poput stoga, reda, skupa, Fenwickovog stabla, segmentnog stabla, prioritetnog reda, union-find strukture, trie strukture i slično. Bazni jezik nam je C++.

Rezultati naših članova govore o kvaliteti našeg rada. Čak trojica naših osnovnoškolca (Samuel Sobočan, Matija Bujanić i Vedran Cifrek) plasirala su se na Juniorsku Hrvatsku informatičku olimpijadu (JHIO), dok je naš najtrofejniji član, Martin Josip Kocijan, ostvario plasman na Hrvatsku informatičku olimpijadu te osvojio prestižno 7. mjesto (uzevši u obzir da je učenik 1. reazreda srednje škole u konkurenciji starijih kolega do 4. razreda srednje škole).

Na ovogodišnjem državnom natjecanju INFOKUP 2017. osvojili smo 2 prva mjesta u državi (Martin Josip Kocijan i Samuel Sobočan), a isto tako i najviša mjesta na Hrvatskom otvorenom natjecanju informatike. Uspjehe ostvarujemo već duži niz godina. Unatrag nekoliko godina, naši programeri ekipno osvajaju 2. mjesto u državi. I to zasebno srednjoškolska i osnovnoškolska ekipa. Našim radom i uspjehom tako smo stekli kredibilitet kao jedni od najboljih u državi!