Prezentácia sa nahráva. Prosím počkajte

Prezentácia sa nahráva. Prosím počkajte

Opakovanie sekvencia postupnosť príkazov (príkaz je povel, ktorý počítač alebo iné zariadenie pozná a dokáže vykonať) vykonávanú v takom poradí, v akom.

Podobné prezentácie


Prezentácia na tému: "Opakovanie sekvencia postupnosť príkazov (príkaz je povel, ktorý počítač alebo iné zariadenie pozná a dokáže vykonať) vykonávanú v takom poradí, v akom."— Prepis prezentácie:

1 Opakovanie sekvencia postupnosť príkazov (príkaz je povel, ktorý počítač alebo iné zariadenie pozná a dokáže vykonať) vykonávanú v takom poradí, v akom sú jednotlivé časti zapísané vetvenie poskytuje možnosť rozhodnúť sa podľa pravdivosti skúmaného znaku. Skladá sa z podmienky uvedenej za slovíčkom ak a z príkazov, ktoré sa vykonajú v prípade kladného a záporného výsledku. Týmto dvom častiam hovoríme vetvy. cyklus umožňuje ľubovoľnú činnosť opakovať. Pri opakovaní je dôležité čo (telo cyklu) sa má opakovať a dokedy (podmienka cyklu) sa má opakovať.

2 Riadenie nemysliaceho zariadenia
Majme k dispozícii robotický vysávač, ktorý dokáže nasledovné činnosti: posun – posunie vysávač vpred o 50 cm, vysaj – zapne vysávanie prachu na 10 s, vľavo bok - otočí sa o 90° doľava.

3 Príklad sekvencie Zabezpečte, aby vysávač vysal metrový pás v smere, ktorý má nastavený.

4 Riešenie vysaj // 50 cm posun vysaj // 100 cm posun // nie je potrebné
Problém sme vyriešili vďaka sekvencii príkazov, ktoré sa vykonávajú v takom poradí, v akom sú zapísané. Vo všeobecnosti možno sekvenciu zapísať nasledovne: príkaz1 príkaz2 ... príkazn

5 Príklad alternatívy Zabezpečte, aby sa vysávač v prípade narazenia na prekážku otočil doľava. Na riešenie problému potrebujeme, aby vysávač dokázal zistiť (rozhodnúť), či má pred sebou prekážku alebo nie. Nevyhnutnou je teda nová schopnosť: prekážka – v prípade existencie prekážky vráti hodnotu ANO, inak hodnotu NIE,

6 Riešenie ak prekážka = ÁNO tak vľavo bok inak posun
zápis obsahuje dve vetvy (alternatívy), pričom stroj, ktorý príkazy vykonáva si vyberie v závislosti od splnenia podmienky. vo všeobecnosti: ak podmienka tak príkaz11 príkaz12 ...príkaz1m príkaz21 príkaz22 ...príkaz2n koniec ak

7 Príklad cyklu vysaj posun....
Zabezpečte, aby vysávač vyčistil 15 metrový pás. úlohu by sme mohli riešiť zápisom sekvencie tak, že by sme 30 ráz za sebou zopakovali dvojicu: vysaj posun vysaj posun.... vhodnejšie riešenie však predstavuje použitie cyklu. počet opakovaní nám je známy (30 x - prečo?)

8 Riešenie opakuj 30 krát vysaj posun vo všeobecnosti: opakuj počet krát
príkaz1 príkaz2 ... príkazn koniec opakuj

9 Typy cyklov použitý cyklus je cyklus s pevným (známym) počtom opakovaní nie vždy je nám však počet opakovaní známy v momente vytvárania algoritmu => potreba kontroly ukončenia cyklu buď: pred vykonaním kroku (tela) cyklu – cyklus s podmienkou na začiatku po vykonaní tela cyklu – cyklus s podmienkou na konci v prvom prípade sa cyklus nemusí vykonať vôbec, v druhom prebehne minimálne raz – prečo?

10 Príklad: cyklus s podmienkou na začiatku
Napíšte algoritmus, ktorý zabezpečí vysávanie od aktuálnej polohy po prekážku. pokiaľ prekážka = NIE rob vysaj posun koniec pokiaľ všeobecne: pokiaľ podmienka rob príkaz1 príkaz2 ... príkazn koniec rob

11 Príklad: cyklus s podmienkou na konci
Upravte algoritmus zabezpečujúci vysávanie od aktuálnej polohy po prekážku tak aby sa vysávanie vykonalo minimálne raz. rob vysaj posun pokiaľ bude prekážka = NIE všeobecne: príkaz1 príkaz2 ... príkazn pokiaľ bude podmienka

12 Cyklus vo VD s pevným/známym počtom opakovaní
- i je riadiaca premenná cyklu, n je počet opakovaní, p je príkaz (resp. zložený príkaz), ktorý sa opakuje s neznámym počtom opakovaní s podmienkou na začiatku s podmienkou na konci

13 Cyklus so známym počtom opakovaní
používa sa, ak počet opakovaní je známy pred odštartovaním cyklu počet možno vyjadriť prostredníctvom spodnej a hornej hodnoty po vykonaní príkazov cyklu sa hodnota riadiacej premennej zvýši a skontroluje sa, či nepresiahla hornú hranicu cyklus prebiehajúci od a po b sa vykoná b-a+1 ráz napr. od 5 do 10 sa vykoná pre hodnoty 5, 6, 7, 8, 9, 10, t.j. spolu 6 krát

14 Jednoduché príklady Vypočítajte hodnotu súčtu prvých N prirodzených čísel. Zistite faktoriál zadaného čísla. Pre interval zadaný prostredníctvom hraníc a a b zistite, koľkokrát sa v ňom nachádzajú čísla deliteľné hodnotou d.

15 Cyklus s podmienkou na začiatku
používa sa, ak nie je zrejmé koľkokrát má cyklus prebehnúť, prípadne ak závisí na výpočtoch realizovaných v jeho tele cyklus obsahuje podmienku, pri splnení ktorej prebehnú príkazy uvedené v jeho tele – ak podmienka nie je splnená, vykonávanie cyklu sa ukončí, => v prípade nesplnenej podmienky nemusí prebehnúť ani raz – „opatrný cyklus“ využitie – pomerne univerzálne

16 Jednoduché príklady Vypočítajte ciferný súčet číslic daného prirodzeného čísla N. Napíšte algoritmus, ktorý zistí počet deliteľov zadaného čísla. Napíšte algoritmus, ktorý nájde najväčšieho spoločného deliteľa dvoch čísel. Napíšte algoritmus, ktorý vykráti zlomok zadaný prostredníctvom čitateľa a menovateľa. Napíšte algoritmus, ktorý pre zadané číslo vráti jeho zrkadlový obraz (za akých podmienok je riešenie správne?).

17 Cyklus s podmienkou na konci
najprv sa vykoná telo cyklu, potom sa zisťuje splnenie podmienky ak je podmienka cyklu splnená, vykonávanie cyklu sa ukončí, => cyklus vždy prebehne minimálne raz využitie – kontrola vkladaných hodnôt

18 Cyklus s podmienkou na konci II.
Pre trojicu zadaných hodnôt zistite, či môžu byť stranami trojuholníka. Napíšte algoritmus, ktorý bude vykonávať matematické operácie a po zobrazení výsledku sa opýta, či má pokračovať alebo skončiť.

19 Cyklus s podmienkou na konci III.
Pre postupnosť čísel ukončenú nulou vypíšte nájdite maximum. Pre postupnosť rôznych čísel ukončenú nulou nájdite najmenšie a druhé najmenšie číslo. Pre zadanú postupnosť čísel ukončenú nulou zistite, koľko sa v nej nachádza párnych a koľko nepárnych čísel.


Stiahnuť ppt "Opakovanie sekvencia postupnosť príkazov (príkaz je povel, ktorý počítač alebo iné zariadenie pozná a dokáže vykonať) vykonávanú v takom poradí, v akom."

Podobné prezentácie


Reklamy od Google