up:: ALG

  • Co je to algoritmus?

    • Postup, návod, jak vyřešit nějakou úlohu / problém
  • Vlastnosti algoritmů:

    • konečnost - konečný počet kroků
    • určitost - je přesně specifikováno, co se bude dít (žádné náhodné jevy)
    • korektnost - pro platný vstup vrátí správný (a pokaždé stejný) výstup
    • obecnost - umí řešit všechny problémy daného “typu”
  • Z čeho se algoritmus skládá:

    • sekvence - příkazy po sobě
    • selekce - větvení, podmínky
    • iterace - cyklení, opakování
  • Způsoby zápisu algoritmů:

    • slovně
    • vývojové diagramy
    • strukturogramy
    • specializované (programovací) jazyky
  • Proměnné

    • Je to zástupné jméno pro nějakou zapamatovanou hodnotu, typicky odkaz někam do paměti.
  • Výrazy

    • XOR - platí přesně jeden z nich, “buď anebo”
    • +
    • tautologie - je to vždycky pravda, např: A or !A
    • kontradikce - nikdy to neplatí, např: A and !A

Strukturogram

  • Strukturogram > UML
    • strukturované lépe se přepisuje do kodu

predneska

  • musí
    • Konečnost
      • musí skončt
    • Geneleziace
      • neni vazano na specifickou situaci ale na ruzne inputy
    • Determinovanost
    • Elementárnost
    • Resultativnost
      • vrátí výsledek, nn null
    • (teorie není u zkoušky)
  • sekvence | selekce | iterace
    • sekvence - posloupnost
      • státwlak1xx+ěš+ěš
    • selekce
      • rozhodování
      • Je dnes čvrtek? JJ
    • UML už asi nebude
      • skok bez struktury