| Website school |

Oefeningen revMedia

Wat is revMedia?

RevMedia is een programmeeromgeving die rechtstreeks afstamt van HyperCard, een in 1987 door Apple voor haar Macintosh-computers ontwikkeld softwarepakket. “Een programmeeromgeving voor niet-programmeurs”, zo werd het bij de lancering omschreven. Het was toentertijd het meest gebruiksvriendelijke systeem als je je de basisprincipes van programmeren wilde eigen maken. Of als je verder wilde gaan en eigen applicaties op poten wilde zetten. Die gebruiksvriendelijkheid uitte zich bijvoorbeeld in een programmeertaal die zo dicht mogelijk aansloot (en nog aansluit) bij gewoon dagelijks Engels; het belangrijkste nadeel daarvan is dat het resulteert in niet echt compacte instructies, zoals in C++. Maar desondanks kon je met HyperCard heel zinvolle toepassingen uitbouwen; voor revMedia geldt overigens nog altijd hetzelfde. (Intussen heeft revMedia een nieuwe naam, LiveCode, gekregen.)

In de lessen informatica bij ons op school zit er al een beperkte cursus programmeren sinds we in 1984 onze eerste computers installeerden. Heel in het begin werkten we met Pascal, dat toentertijd als de didactisch meest aangewezen programmeertaal werd beschouwd. Maar toen HyperCard gratis bij elke Mac werd meegeleverd, was de overstap vlug gemaakt. Later, toen Apple HyperCard niet meer ondersteunde, hebben we wat geëxperimenteerd met andere systemen, maar echt lekker liep dat nooit. Er waren wel enkele HyperCard-klonen op de markt maar voor een school was de aanschaf daarvan te duur. Tot Revolution (dat later zijn naam veranderde in runRev) kwam: zij boden een instapversie aan voor een redelijke prijs en bovendien ontwikkelden ze een (vrij te downloaden) Player die je samen met je in revMedia gemaakte applicaties kon verspreiden. Het werd nog mooier toen je de instapversie gratis kon downloaden (op http://www.runrev.com). (Andere versies van hetzelfde programma bieden meer mogelijkheden maar zijn niet gratis.) Op dit ogenblik is ook de instapversie (van LiveCode) helaas niet meer als freeware beschikbaar.

RevMedia is vele malen krachtiger dan het oorspronkelijke HyperCard en ermee leren werken is dus ook wat minder eenvoudig geworden, maar het blijft nog altijd een van de meest gebruiksvriendelijke programmeeromgevingen om de stiel te leren.

Leren programmeren

Op dit ogenblik krijgen alleen de leerlingen van 5MTW deze cursus over de basisprincipes van programmeren. Omdat uit reacties van oud-leerlingen blijkt dat zo’n introductie heel zinvol is als je in je verdere opleiding nog een (andere) programmeertaal moet leren, maken we het cursusmateriaal ook toegankelijk voor leerlingen van andere klassen. Het bestaat uit een syllabus (te downloaden als een pfd-bestand), en een reeks oefeningen.

De oefeningen hieronder zijn oorspronkelijk uiteraard gemaakt met revMedia/revTalk. Nadien zijn ze omgezet in revlets: een samentrekking van revolution en applet. Op die manier kunnen ze worden opgenomen in webpagina’s. Het oorspronkelijke programmascript is niet meer zichtbaar, maar dat is in deze cursus een bewuste keuze: je bent verplicht zelf op zoek te gaan naar de oplossing.

Om je browser toe te laten het in een revlet opgeslagen programma te draaien, moet je eerst een plug-in installeren. Als je dat nog niet hebt gedaan, word je bij het aanklikken van een oefening automatisch doorverbonden naar de webpagina waar je die plug-in kunt downloaden.


  1. Reageren op events: de knop op deze kaart reageert (verschillend) op drie events: mouseEnter, mouseUp en mouseLeave.
  2. Een stapel (stack) van meerdere kaarten
    Een Revolution-bestand is opgebouwd als een stapel kaarten, met elk hun eigen of met gemeenschappelijke objecten.
  3. Wil je meer vakantie?
    Eveneens een oefening in verband met events. Ook de set-instructie komt hier aan bod.
  4. Verschillend of gelijk?
    Deze oefening is een toepassing op het gebruik van een selectie in een algoritme.
  5. Is een woord (tekst) een palindroom?
    Deze oefening is ook een toepassing op het gebruik van variabelen en chunks. Ook de begrensde iteratie komt hier aan bod.
  6. Hoeveel (en welke) letters hebben twee woorden gemeenschappelijk?
  7. Bereken de grootste gemene deler van twee gehele getallen: een toepassing op de voorwaardelijke iteratie.
  8. Bereken de gemeenschappelijke producten van twe gehele, positieve getallen.
  9. Bereken de Collatz-reeks voor een bepaald getal.
  10. Vul een lottoformulier in.
  11. Is het opgegeven getal een priemgetal?
  12. Hoe nauwkeurig kun je nog werken met zeer grote getallen?
  13. Controleer een (Belgisch of Nederlands) bankrekeningnummer.
  14. Controleer een IBAN-code.
  15. Controleer het nummer van een VISA-kaart.
  16. Bereken het jaartal in een chronogram.
  17. Op welke datum valt Pasen?
  18. Op welke weekdag valt een bepaalde datum?
    Het dateItems-formaat in revMedia bevat onder meer de weekdag.
  19. Recursieve functies: berekening van faculteit en grootste gemene deler.
  20. Herken de spelfouten.

Rik Palmans (2011)