Zdravím,
tento rok jsme zacali brat pascal, mame probrane vetsiny prikazu (podminky, cykly, ted zaciname crt prikazy). Proste zaklady a uz ted jsem ejden z mala, co se orientujou xD
Pred nedavnem nam profesor rekl, ze mame probranych 99 procent zakladnich prikazu. CHybi nam pouze skoky, ktere ale probirat nebudeme, ponevadz je nema rad a delaji program tezsi na opravu.
Snazil jsem se o teto tematice neco najit a jedine, co jsem se dozvedel bylo, ze se jedna o prikaz <i>goto<i/> a ze se nedoporucuje ho uzivat, snizuje prehlednost programu.
Rad bych se dozvedel, co vlastne tento prikaz dela a hlavne ,jak se pouziva. (Nejake manualy jsem nasel, bohuzel jen v anglictine a moc chytry jsem z toho nebyl)
Predem diky :o)
Fórum › Pascal
Skoky
1) Definuješ si návěští. To se dělá v sekci label (podobně jako je třeba sekce const):
label semhle, tamhle, 10;
Jako návěští se dá použít číslo nebo běžný identifikátor.
2) Návěští zakomponuješ do programu před nějaký příkaz:
semhle: nějaký příkaz;
Návěští a za ním dvojtečka. Samozřejmě to nemusí být takhle na jednom řádku a taky ten příkaz za návěštím není nutný.
3) Příkaz pro skok vypadá takhle:
goto semhle;
Slovo goto a jméno návěští.
4) Podmínky:
- Skákat se dá pouze v rámci jednoho bloku (procedury, funkce, programu). Nemůžeš např. vyskočit ven z procedury.
- Nesmí se skákat dovnitř for-cyklů a podobně. Ven z nich ale skočit můžeš.
5) Praktické využití:
- výskok z několikanásobně vnořených cyklů,
- přeskočení do jednoho místa z několika bodů,
- matení čtenářů zdrojáku :-)
Enjoy ;-)
Moje stránka.
proste ses na jenom miste programu a pomoci goto navesti se muzes presunout naprosto jinam...
nepouziva se moc ve strukturovanem programovani proto, ze kdyz jich tam das par tak uz se v tom za par dni ani sam nevyznas...
no a kdyby to byl nejakej slozitej program tak se v tom nevyzna ani genius... hodne se ale vyuziva treba v assembleru...
tam si teprve clovek posteskne nad if ( ... ) then else ... :D misto toho jne, je, jz.....
krom toho se prakticky vse da resit prave pomoci vetveni nebo cyklu... akorat je to prehlednejsi...
Goto je využitelný když třeba chceš neplánovaně vyskočit z nějakého hodně vnořeného bloku příkazů. Třeba:
for a:=0 to n do
for b:=0 to a do
for c:=1 to 10 do
if pole[a,b,c]=0 then Goto Dalsi_prohledavani_je_zbytecne_jdem_dal
Dalsi_prohledavani_je_zbytecne_jdem_dal:
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Moderátoři diskuze