Werken met lijsten

b.peters shared this question 5 years ago
Answered

Ik zou gebruik willen maken van lijsten om oefeningen te genereren.

LijstOpgave zou alle mogelijke waarden bevatten van waaruit een oefening opgebouwd wordt.

Met het commando willekeurigelement laat ik dan een waarde uit die lijst kiezen.

Wanneer de leerling een nieuwe oefening wil maken wordt opnieuw een waarde uit LijstOpgave gekozen.

Opdat een leerling niet tweemaal dezelfde oefening zou krijgen moet de eerste opgave uit LijstOpgave verwijderd worden.

Dit lukt me niet.


Concreet is mijn vraag: hoe kan je uit een bestaande lijst elementen verwijderen of toevoegen.

Bvb. LijstOpgave={15,36,81,94}

Ik wil het 81 uit de lijst verwijderen.

Resultaat: LijstOpgave={15,36,94}


PS. Ik ben nog niet zolang bezig met het ontwikkelen van oefeningen aan de hand van GeoGebra script. Bestaan er cursussen die hier specifiek over gaan?

Comments (2)

photo
1

beste

ik los dit niet op door een element te verwijderen uit de lijst en opnieuw een willekeurig element te kiezen.

Een handiger alternatief is om van bij het begin een permutatie te maken van de mogelijke getallen (opgaven) en daarvan via een teller steeds het volgende getal te nemen uit de lijst. Deze permutatie krijg je door het commando Schudden[<Lijstdefinitie>]

In het voorbeeld in bijlage:

LijstOpgave = Schudden[Rij[n, n, 1, 9]] creëert een gepermuteerde lijst van de getallen van 1 tot 9

Je kunt even goed Schudden[{15,36,81,94}] definiëren.

k=1

a= LijstOpgave(k) (opm: dit is een handige inkorting van Element[LijstOpgave,k])


In een script van een actieknop bepaal je SetValue[k,Als[k<9,k+1,1]], waardoor de teller k steeds met 1 verhoogd wordt, en terug 1 wordt na het laatste getal.

Een resetknop zet de teller terug op 1 en met UpdateConstructie[] wordt de Lijst opnieuw geschud in een nieuwe volgorde en kan je opnieuw beginnen.


Ik heb zelf wat ervaring opgebouwd door in de invoerhulp te gaan kijken (klik op het driehoekje achter de invoerbalk). In de categorieën scripting en in Lijsten vind je wat zoal bestaan aan commando's. Klik je op help dan kan je in de zoekbalk dit commando typen en vind je geïllustreerde uitleg in het Nederlands voor elk bestaand commando. Uiteraard ben ik er bij het vertalen van de handleiding heel wat tegengekomen die ik zelf nog niet kende en leerde kennen tijdens het vertalen...

Ik plan 'ooit' nog wel eens een GGboek over scripting.

Je vind wel een aantal Engelse tutorials als je op http://www.geogebra.org/wiki/en/Main_Page als zoekterm tutorial scripting ingeeft.

Als je me mailt chris.cambre@telenet.be kan ik je ook een syllabus opsturen van een navorming over scripting die ik verleden jaar gaf.

Het vraagt een tijdsinvestering eer je de knepen wat doorkrijgt, maar het loont meer dan de moeite.

chris

https://ggbm.at/2576821

photo
2

Beste Chris,


Perfecte oplossing voor mijn probleem.


Hartelijk bedankt, voor je snelle antwoord! Ik stuur je in alle geval een mailtje wat de syllabus betreft.


Bart

© 2021 International GeoGebra Institute