Struktūrinis programavimas
Pamoka 1 / 11 Algoritmai ir įrankiai ~45 min
1 / 4 📖 Teorija

Kas yra algoritmas

Kompiuteris nesupranta „maždaug". Algoritmas — tai baigtinė, vienareikšmė žingsnių seka, kuri iš pradinių duomenų padaro rezultatą. Du žodžiai čia svarbiausi:

  • Baigtinė — žingsniai kada nors pasibaigia. „Kartok, kol pavyks" be sustojimo taisyklės — ne algoritmas.
  • Vienareikšmė — kiekvieną žingsnį galima atlikti tik vienu būdu. „Paimk didesnį skaičių" — aišku; „paimk gražesnį skaičių" — ne.

Prieš rašant kodą, algoritmą patogu užsirašyti pseudokodu — paprastais sakiniais, be jokios programavimo kalbos. Štai algoritmas „rask didžiausią skaičių sąraše":

1. Paimk PIRMĄ sąrašo skaičių ir pavadink jį „didžiausias".
2. Eik per likusius skaičius po vieną.
3. Jei skaičius didesnis už „didžiausias" — pakeisk „didžiausias" į jį.
4. Kai skaičiai baigėsi, „didžiausias" ir yra atsakymas.

Šitą patį algoritmą 3 žingsnyje paversime tikru Go kodu — pamatysi, kad kodas beveik pažodžiui atkartoja sakinius.

Patarimas. Visą kursą darysi vieną dalyką: aprašysi žingsnius žmonių kalba, o tada išversi juos į Go. Kas moka užrašyti algoritmą, tas jau moka programuoti — liko tik sintaksė.