Prednáška č. 4 | Základy algoritmizácie a programovania (2017/2018)

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

Preber si túto prednášku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.

Otvoriť AI: ChatGPT · Claude · Gemini

Zhrnutie prednášky

Prednáška sa venuje riešeniu Fibonacciho postupnosti pomocou robota Karla bez použitia premenných, čo si vyžaduje použitie rekurzie namiesto cyklu. Vysvetľuje sa funkcia copy beepers, ktorá rekurzívne zbiera a kopíruje značky na správne pozície, pričom sa zdôrazňuje dôležitosť podmienky ukončenia rekurzie kvôli riziku pretečenia pamäte. Ďalej sa preberá efektivita algoritmov na príklade spočítavania ľudí po jednom, dvoch či troch, kde sa porovnáva rýchlosť oproti zložitosti ukončovacích podmienok. Na záver sa demonštruje nekonečný cyklus, v ktorom Karel chodí medzi dvoma stenami, a zjednodušenie zápisu podmienky pomocou logického operátora AND namiesto vnorených if-ov.

  • - Fibonacciho postupnosť u robota Karla sa rieši rekurziou, keďže premenné sú zakázané
  • - Funkcia copy beepers rekurzívne zbiera a znovu ukladá značky na požadované pozície
  • - Rekurzia musí mať zaručenú podmienku ukončenia, inak hrozí pretečenie pamäte
  • - Rekurziu treba používať len ak je nevyhnutná, nie ako náhradu za cyklus
  • - Efektivita algoritmu závisí od voľby postupu (napr. počítanie po jednom vs. po skupinách)
  • - Nekonečný cyklus umožňuje robotovi chodiť neustále medzi dvoma protiľahlými stenami
  • - Logický operátor AND (&&) môže nahradiť vnorené if podmienky a zjednodušiť zápis

Zhrnutie pripravené s pomocou AI z prepisu videa.