IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Záhradka s opakovaním

Petřík sníva o tom, že by si rád vysádzať kvety po obvode svojej záhradky o veľkosti 15 políčok na šírku i výšku. Mohli by sme síce viackrát skopírovať príkazy z predošlej kapitoly, ale za niečo také by sa musel snáď každý programátor začervenať hanbou Poličkové grafika
.

Naučíme sa preto používať cyklus. Cyklus zabezpečuje opakované vykonávanie príkazov. Použijeme cyklus s pevným počtom opakovaní. Je označený menom opakovanie príkazov s počtom Poličkové grafika
a nájdete ho v okne Základné prvky, kôš v skupinke riadenie programu Poličkové grafika
. Presuňte ho na úplný začiatok programu z minulej kapitoly (pred všetky príkazy).

Po položení prvku cykle si všimnite, že si so sebou priniesol ešte ďalšie dva prvky. Tieto dva prvky sú neoddeliteľnou súčasťou cyklu a nie je možné ich zrušiť ani nikam presunúť. Prvý prvok je označený pre počet opakovaní Poličkové grafika
a je určený na zadanie počtu, koľkokrát sa majú príkazy cyklu vykonať. Druhý prvok nesie označenie opakuj príkazy Poličkové grafika
. Sem kladieme príkazy cyklu určené k opakovaniu. Hovoríme mu tiež telo cyklu.

Najskôr určíme príkazy, ktoré bude cyklus vykonávať. Z predošlej kapitoly máme pripravený príkaz pre krok a príkaz pre položenie kvety pred Petríka. Tieto dva príkazy pretiahnite do tela cyklu, teda do prvku opakuj príkazy Poličkové grafika
. Pre pripomenutie, príkaz pre položenie kvety pred Petríka sme si predtým vytvorili z dvoch prvkov, z prvku predmet pred Petrik Poličkové grafika
a k nemu pripojeného prvku Kvetina Poličkové grafika
.

Teraz určíme počet opakovaní, koľkokrát budú príkazy v cykle vykonané. K tomu potrebujeme prvok číselná konštanta Poličkové grafika
, Ktorý nájdete v skupinke výpočty Poličkové grafika
. Pretiahnite ho do prvku pre počet opakovaní * [ images/img/pe­tr_tutorial_pro­pocet.gif ]
. Ak prvok číselné konštanty v okne Základných prvkov rozviniete, nájdete v ňom prvky číslic 0 [
images/img/pe­tr_tutorial0.gif ]
9 [
images/img/pe­tr_tutorial9.gif *]
. Presuňte číslice do číselné konštanty v programe tak, aby vzniklo číslo počtu opakovaní príkazov. Zostavené číslo v číselnej konštante pritom čítame zhora nadol. Ako počet opakovaní zvolíme číslo o jedno menšie, než je šírka záhradky. Nastavíme teda číslo 14 - konštanta bude obsahovať číslicu 1, pod ňou bude číslica 4.

Prezradím vám ešte iný spôsob zadávania čísla. Neobsahuje Ak číselná konštanta vnútri žiadny prvok číslice, uplatní sa číslo napísané v informatívnom texte číselné konštanty. Za číslom môže nasledovať akákoľvek poznámka. Takže v našom prípade by stačilo napísať k prvku text 14 - počet krokov. Predošlý spôsob je však trochu názornejšie.

Teraz už vyhoďte do koša (poľa vpravo hore) všetky ostatné prvky, ktoré zostali mimo cyklus, okrem jedného príkazu pre otočenie vľavo a príkazu pre čakanie na stlačenie klávesy. Vyhadzovať môžete myšou, ale existuje aj rýchlejší spôsob pomocou klávesnice. Označte kliknutím ľavým tlačidlom myši na ikonu prvý z rušených prvkov a potom tlačte kláves Delete, kým nebudú všetky nepotrebné prvky odstránené. Moc to ale neprežeňte, nech nemusíte používať obnovovaciu tlačidlo Späť Poličkové grafika
.

Po všetkých úpravách by vám mal vzniknúť program vyzerajúce takto:

Poličkové grafika

Všimnite si, ako možno program vďaka popisom prvkov čítať celkom prirodzeným spôsobom: "Pre počet opakovaní 14 opakuj príkazy: polož ako predmet pred Petrik Kvetinu, potom urob krok."

Program spustite. Petřík sa vydá k pravému okraju okna a cestou vsádza kvety. Keď nasade kvety takmer po celom spodnom okraji okna, otočí sa hore a čaká. Zabudol kvetinu na začiatku radu vľavo, ale nabudúce sa určite polepší.

Teraz by sme mohli náš cyklus skopírovať ešte trikrát; potrebujeme totiž celkom štyri strany. Ale pretože sme správne programátori, použijeme k tomu opäť cyklus. Cyklus je totiž v podstate bežný príkaz a tak ho môžeme vložiť do iného cyklu.

Presuňte z poľa Základných prvkov ďalší prvok opakovanie príkazov s počtom Poličkové grafika
a vložte ho úplne na začiatok programu. Ako počet opakovaní uveďte číslo 4. Pre číselné konštanty s jednou číslicou môžeme používať priamo samotné číslice, ktoré nájdete u prvku číselné konštanty. Takže do parametra cyklu pre počet opakovaní pretiahnite prvok číslice 4 Poličkové grafika
.

Do tela cyklu opakuj príkazy Poličkové grafika
pretiahnite skôr vytvorený cyklus pre vysádzanie jednej strany záhradky a pod neho príkaz pre otočenie vľavo. Príkaz pre čakanie na stlačenie klávesy necháme úplne na konci celého programu. Dobrý programátor si ešte svoj výtvor okomentuje poznámkami, aby mu bola činnosť programu jasná aj na druhý deň. A nielen jemu, ale aj všetkým ostatným, ktorí program niekedy uvidia. Komentovanie znamená zmena textu u prvku. Až na špeciálne prípady (číselná a textová konštanta) program text uvedený u prvku nijako nepoužíva a je plne k dispozícii poznámkam programátora.

Tu vidíte výsledok našej usilovnej práce:

Poličkové grafika

Program spustite. Petřík sa rozbehne okolo svojej novej záhradky a usilovne vsádza kvety. Tentoraz už nastrieľal všetky a na žiadnu nezabudol. Páči sa vám jeho záhradka?

Poličkové grafika

Ak zvýšite počet krokov vo vnútornom cykle, napríklad na 44, môžete pozorovať, že Petřík vytváraný kvetiny teraz už skutočne po celom obvode plochy a ani mu nevadí, že na konci cesty vždy narazí hlavou do steny. Ak nemôže nejakú operáciu vykonať, tak ju jednoducho nevykoná a nič sa nestane.

Ak chcete ešte experimentovať, skúste zväčšiť číslo v počte opakovaní hlavného (vonkajšieho) cyklu. Petřík bude pobehovať okolo okraja okna neustále. Pri veľkom počte opakovaní sa možno už ani konca nedočkáte a budete musieť program prerušiť kliknutím na tlačidlo s krížikom Poličkové grafika
(v pravom hornom rohu okna) alebo stlačením kombinácie klávesov Alt + F4.

Ako domácu úlohu skúste doplniť program tak, aby Petřík po nasadení kvetov obišiel všetko ešte raz a kvety naopak otrhali.

Teraz by sme mohli náš cyklus skopírovať ešte trikrát; potrebujeme totiž celkom štyri strany. Ale pretože sme správne programátori, použijeme k tomu opäť cyklus. Cyklus je totiž v podstate bežný príkaz a tak ho môžeme vložiť do iného cyklu.

 

Stiahnuť

Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami

Stiahnuté 276x (129.18 kB)
Aplikácia je vrátane zdrojových kódov v jazyku Petr (sú obsiahnuté v EXE súbore, ktorý možno v programe priamo otvoriť)

 

Všetky články v sekcii
Poličkové grafika
Článok pre vás napísal Panda38
Avatar
Užívateľské hodnotenie:
Ešte nikto nehodnotil, buď prvý!
Programátor C++, WinAPI, ASM.
Aktivity