Úvod do programování
Základní informace
 Vytisknout studijní materiál

Základy programování

Algoritmem označujeme v intuitivním smyslu postup, který nás dovede k řešení určitého problému. Postup musí být zadán formou konečného počtu jednoznačných kroků a musí umožnit řešení celé třídy problémů stejného druhu.

(Obecné vlastnosti algoritmu : rezultativnost, determinovanost, hromadnost.)

Heuristika postup, který je schopen často nalézt řešení problému (nezaručují je však). K heuristikám se uchylujeme tehdy, jestliže zaručené řešení problému je pro jeho přílišnou náročnost ( např. časovou ) prostě nezvládnutelné.

Přístup řešení problémů jehož výsledkem jsou algoritmy využívá dva základní principy dekompozice a abstrakce

Dekomponovat znamená chápat složité objekty v podobě kolekce jednodušších. Také to znamená najít ve složitém objektu takové hierarchické uspořádání, které umožní zapsat složité akce pomocí akcí jednodušších(Ty mohou být stejným způsobem redukovány na akce ještě jednodušší). Tímto způsobem postupujeme tak dlouho, až dosáhneme natolik jednoduchých akcí, že máme prostředky k jejich řešení.

Abstrakce: koncepční zjednodušení složitého ignorováním detailů. Pojmenováním akcí adočasným ignorováním detailů je možné celý složitý problém řešit po částech. Abstrakce tedy umožňuje oddělit jádro řešeného problému od detailů.

Princip použití dekompozice a abstrakce : princip modulárního programování.(programovací jazyky jej umožňují prostřednictvím podprogramů, programových jednotek atd.)

Dekompozice i abstrakce souvisí s metodologiemi programování známými pod názvy: shora dolů a zdola nahoru. Přístup metodou shora dolů je bezpečnější, protože vychází z celkových požadavků a měl by být základní metodou při návrhu algoritmů.

Základní prostředky pro zápis algoritmů

Základním požadavkem na vytvářený algoritmus je požadavek strukturovanosti. To předpokládá použití standardních programových konstrukcí.

Přehled základních programových konstrukcí, ze kterých je možno vytvářet programy

1. Blok N příkazů

Zápis v jazice JAVA

{

P1;

P2;

...

Pn;

}

2. Větvení programu

Zápis v jazyce JAVA

    if(PODMÍNKA) {

          BLOK PŘÍKAZŮ1;

    }

    else {

           BLOK PŘÍKAZŮ2;

    }

blok příkazů jen v kladné větvi ( analogicky nakreslení bloku příkazů do záporné větve - do větve else)

Zápis v jazyce JAVA

if (PODMÍNKA) {

                                 . . .

                          BLOK PŘÍKAZŮ;

            }

3. Cyklus se známým počtem opakování

Zápis v jazyce JAVA

           for (i = 1; I <= n; i++) {

   BLOK PŘÍKAZŮ;

}

nebo : for ( i = n; I > 0; i--)

4. Cyklus s podmínkou na začátku

Zápis v jazyce JAVA

      while (PODMÍNKA) {

BLOK PŘÍKAZŮ;

     }

(je-li splněna podmínka, vykoná se blok příkazů)

5. Cyklus s podmínkou na konci

Zápis v jazyce JAVA

      do {

          BLOK PŘÍKAZŮ;

     }   while (Podmínka);

(opakuje blok příkazů dokud je splněna podmínka)

6. Přiřazovací příkaz

Zápis v jazyce JAVA

     Proměnná = výraz;

7. Příkaz vstupu

Zápis v jazyce JAVA

Balík .io obsahuje třídy, které slouží ke zpracování datových vstupů.

8. Příkaz výstupu

Zápis v jazyce JAVA

Balík .io obsahuje třídy, které slouží ke zpracování datových výstupů.

např. Systém.out.print(seznam proměnných);

9. Označení začátku/konce/spojky algoritmu ve vývojovém diagramu

10. Příkaz výběru z více možností

Zápis v jazyce JAVA

Switch ( výraz ) {

                  case 0 : System.out println(‘sudá číslice’); break;

                  case 2 : System.out println(‘sudá číslice’); break;

                  case 4 : System.out println(‘sudá číslice’); break;

                  case 6 : System.out println(‘sudá číslice’);break; >100);

                  case 8 : System.out println(‘sudá číslice’); break;

                  case 10: System.out println(‘číslo 10’); break;

                  default: System.out println(‘číslo liché nebo záporné nebo větší než 10’); break;

           }

Použití příkazu Switch