Hey,

Ik wil het volgende programmaatje maken:

Een applet die een jonge leerling kan gebruiken om de tafels van 1 t/m 10 te oefenen. Het bord met tafels is een paneel met GridLayout waarin 100 knoppen staan. De knoppen maak je met een tweedimensionale array.
Als je op de knop "Nieuw" klikt, wordt de tekst op een van de 100 knoppen rood. Deze knop wordt random bepaald. De leerling tikt in het tekstvak het antwoord in op de opgave die op de knop staat (bv. 3 x 7). Bij een goed of fout antwoord komt er een passende reactie en wordt de rode tekst op de knop weer zwart.

Kan iemand mij aan dit progje helpen?

Alvast bedankt!
Misschien maak ik vanavond nog wel een hi-score, voor wie het snelst 50 sommetjes goed heeft :-)
Jelmer schreef op 07.11.2005 19:07
Bewijs(t niks ^^, )


Mmm, ik ben benieuwd: zet eens een microtimer op dat script?
'k Heb net zoiets als Jelmer gedaan (dacht ik):
http://www.babaluji.nl/phphulp/rand.php

--edit--
Misschien is het leuker als je andere meldingen krijgt als je het bijvoorbeeld voor de tweede keer goed hebt, wat extra motivatie :p...
Jip schreef op 07.11.2005 20:13
'k Heb net zoiets als Jelmer gedaan (dacht ik):
http://www.babaluji.nl/phphulp/rand.php

--edit--
Misschien is het leuker als je andere meldingen krijgt als je het bijvoorbeeld voor de tweede keer goed hebt, wat extra motivatie :p...


Klinkt inderdaad goed Jip, andere meldingen. Mss dan ook wel leuk in combinatie met een scorelijst.

@Jan
Dat van die tijdsdruk is volgens mij wel een goed idee. Zou je er bijv. 5 seconden voor invullen van een antwoord van maken. Zou volgens mij een veel betere oefening zijn dan, want (ik had tenminste begrepen dat het voor leerlingen was) het moet niet zo zijn dat ze maar eeuwig over een antwoord na kunnen denken.
Jip schreef op 07.11.2005 20:13
'k Heb net zoiets als Jelmer gedaan (dacht ik):
http://www.babaluji.nl/phphulp/rand.php


Voor de goede orde: een goede randomfunctie moet natuurlijk juist niet elk getal even vaak kiezen hè. Dat is niet random!
Robert Deiman schreef op 07.11.2005 20:20
@Jan
Dat van die tijdsdruk is volgens mij wel een goed idee. Zou je er bijv. 5 seconden voor invullen van een antwoord van maken. Zou volgens mij een veel betere oefening zijn dan, want (ik had tenminste begrepen dat het voor leerlingen was) het moet niet zo zijn dat ze maar eeuwig over een antwoord na kunnen denken.


Ja, dat zou ook een goede uitbreiding zijn op het script. Misschien zou er dan een counter in beeld moeten komen, die aftelt en dat zou dan in JavaScript of in Flash moeten ipv PHP.
Jelmer schreef op 07.11.2005 17:47
Mmm, ik denk dat ik eens ga kijken welke getallen je het meest krijgt waneer je een miljoen keer rand() aanroept. Volgens mij is de rand() functie van php niet echt eerlijk. :)


Eén van de uitslagen van 1000000 keer:

1 : 100068
2 : 99991
3 : 100392
4 : 100035
5 : 100327
6 : 100169
7 : 99835
8 : 99725
9 : 99598
10 : 99860
SanThe schreef op 07.11.2005 21:20
Eén van de uitslagen van 1000000 keer:

1 : 100068
2 : 99991
3 : 100392
4 : 100035
5 : 100327
6 : 100169
7 : 99835
8 : 99725
9 : 99598
10 : 99860


Dat geeft een standaarddeviatie van 253,6703898
Dus een gemiddelde afwijking van zeg 250 op een miljoen pogingen. Als je een standaarddeviatie van nul zou krijgen, kwam elk getal precies even vaak voor. Als je standaarddeviatie te groot zou worden, is het ook geen goeie toevalsgenerator.

Op de 100.000 keer dat een getal gemiddeld voor komt, zit hij er dus gemiddeld 250 onder of boven en dat vind ik er wel acceptabel uit zien.

Edit: als het ècht een goede toevalsgenerator is, zou de standaarddeviatie moeten dalen als het aantal pogingen toeneemt.

@SanThe: als je je geroepen voelt ... ;-)
@Jan: Jij mag verder het specialistenwerk doen. Hier heb je nog vijf rijtjes. ;-)

1 : 99820
2 : 99770
3 : 99929
4 : 100092
5 : 99935
6 : 99568
7 : 101124
8 : 99561
9 : 100350
10 : 99851

1 : 99727
2 : 99778
3 : 100254
4 : 99597
5 : 99543
6 : 100284
7 : 100256
8 : 100507
9 : 100172
10 : 99882

1 : 99900
2 : 100043
3 : 99366
4 : 100544
5 : 100569
6 : 100126
7 : 100035
8 : 99706
9 : 99766
10 : 99945

1 : 99954
2 : 100214
3 : 100291
4 : 99808
5 : 99796
6 : 100555
7 : 99849
8 : 100078
9 : 99072
10 : 100383

1 : 100288
2 : 100053
3 : 100501
4 : 99830
5 : 99517
6 : 100296
7 : 99611
8 : 100027
9 : 100379
10 : 99498

Reageren