Cursussen/Courses Codesnippets     Top 
Small Basic - Subroutines


1. Subroutines

In Small Basic kan je programmaregels met instructies verzamelen in een subroutine. Deze subroutine kan dan meermaals in een programma worden opgeroepen en uitgevoerd. De subroutine moet in hetzelfde Small Basic bestand staan!

In dit programma wordt eerst de huidige tijd getoond. Na een pauze wordt opnieuw de tijd getoond maar nu door de subroutine "toontijd()" op te roepen. Je kunt een subroutine een zelf gekozen naam geven. Je moet wel de haakjes erachter plaatsen om aan Small Basic duidelijk te maken dat het om een subroutine gaat en geen gewone variabele.

Zolang de variabele "ga_verder" gelijk is aan "ja" wordt de "While" lus uitgevoerd. Als voor "getal1" een nul wordt ingegeven dan wordt de inhoud van de variabele "ga_verder" op "nee" gezet en stopt de verwerking van de "While" lus. Merk op dat de variabele "max" in het hoofdprogramma én in de subroutine wordt gebruikt en de inhoud gewijzigd wordt! In Small Basic zijn alle variabelen in alle onderdelen van eenzelfde programma bruikbaar. Hiervan wordt gezegd dat de variabelen "globaal" of "public" zijn.



2. Oefeningen

1. Schrijf een programma dat alle priemgetallen van 1 tot 1000 in een tekstvenster toont. Gebruik hierbij "For" lussen en een subroutine die voor elk getal controleert of het getal een priemgetal is. (programma naam: priemgetallen)

2. Met de eigenschap "Month" van het object "Clock" kan je het nummer van de huidige maand ophalen. Schrijf een subroutine die de maandnummer omzet in de juiste benaming van de maand (1 = januari, 2 = februari, …). Test die subroutine uit in een programma waarbij je een willekeurig aantal datums ingeeft (datumformaat = "dd/mm/jjjj"). (tip: met de bewerking "GetSubText" van het object "Text" haal je een tekstdeel uit een tekst.) Toon de datum in een tekstvenster volgens het formaat "dd maandnaam jjjj" (bvb. 12 augustus 2012). (programma naam: maandnamen)

3. Schrijf een subroutine die een dobbelsteenworp simuleert. De waarde van de dobbelsteen wordt in een tekstvenster getoond. Test die subroutine uit in een programma met een eindeloze lus waar bij elke druk op de "Enter"-toets een dobbelsteenwaarde wordt getoond. (programma naam: dobbelsteen)

4. Bij het lottospel "Pick3" moet je in een rooster 3 cijfers invullen van 0 tot 9. Schrijf een subroutine die een random cijfer van 0 tot 9 genereert. (tip: de bewerking "GetRandomNumber" van het object "Math" begint vanaf 1 dus kan je de hoogste waarde op 10 zetten en daarna testen of het getal 10 is gekozen. Als dat zo is kan je het cijfer op 0 zetten). Test de subroutine uit in een programma met een eindeloze lus waar bij elke druk op de "Enter"-toets een "Pick3" getal getoond wordt in een tekstvenster. (programma naam: pick3)