Vědět víc - vzdělávací portál pro zvídavé


Lab 1: GOSUB-RETURN

Slide

Připravíme si hlavní část našeho programu, která udělá desetkrát “něco”. Ono “něco” pak uděláme později. 

Napište si následující program: 

10 SCREEN 9:CLS 
20 RANDOMIZE TIMER 
30 FOR J=1 TO 20 
40 A=INT(RND*639)+1 
50 B=INT(RND*349)+1 
60 C=INT(RND*15)+1 
70 R=INT(RND*90)+1 
80 GOSUB 200 
90 NEXT J 
100 END 

Na řádku 10 si připravíme grafický režim a na řádku 20 připravíme generátor náhodných čísel. 

Na řádku 30 startuje cyklus, který proběhne 20-krát. V těle cyklu vymyslíme několik náhodných čísel (A a B jsou středem květů, C je barva a R je poloměr) - všechna čísla připravíme na řádcích 4070

Na řádku 80 je zlatý hřeb - příkazem GOSUB zavoláme podprogram. Po jeho skončení bude program pokračovat na tomto místě. Podprogram se chová jako jeden příkaz BASICu. A je nám jedno, co se za ním skrývá. Je to stále jeden příkaz. 

Na řádku 90 ukončíme cyklus. 

Na řádku 100 je příkaz END, který zastaví provádění programu. Pokud bychom příkaz END nepoužili,  pokračovalo by vykonávání programu do podprogramu, což však nechceme. 

Nyní vytvoříme podprogram, který bude kreslit “květ”. Ten vytvoříme jako sadu paprsků. Budeme tedy pokračovat, a to řádkem 200

200 FOR I = 0 TO 6.28 STEP .1 
210 CIRCLE (A,B),R,C,-I,I 
220 NEXT I 
230 RETURN 

V cyklu kreslíme paprsky pomocí příkazu CIRCLE. Na konci podprogramu se vrátíme příkazem RETURN