$count) die("requested number of elements too large"); while ($no > 0) { $idx = array_rand($array); $out[] = $array[$idx]; unset($array[$idx]); $no--; } $rest = $array; return $out; } $selectors = [ 'leeftijden' => function ($no, &$rest) { return select_no(array ( '12-13', '14-15', '16-17' ), $no, $rest); }, 'geslachten' => function ($no, &$rest) { return select_no(array ( 'jongens', 'meisjes' ), $no, $rest); }, 'jaren' => function ($no, &$rest) { return select_no(array( '2002', '2003', '2004', '2005', '2006', '2007' ), $no, $rest); }, 'onderdelen' => function ($no, &$rest) { return select_no(array( 'sprint', 'hoogspringen', 'verspringen', 'speerwerpen', 'kogelstoten', 'discuswerpen' ), $no, $rest); } ]; function select($no, &$rest) { return select_no(array( 'geslachten', 'jaren', 'onderdelen', 'leeftijden'), $no, $rest); } $stuff = array( 'leeftijden' => array ( 'de leeftijd', 'de leeftijden' ), 'geslachten' => array ( 'het geslacht', 'de geslachten' ), 'jaren' => array ( 'het jaar', 'de jaren' ), 'onderdelen' => array ( 'het onderdeel', 'de onderdelen' ) ); $functions = [ function () use ($selectors, $stuff) { // 1 $rc = select(2, $rest); $rest = array_values($rest); $s = array(); foreach ($rest as $key) { $s[] = ($selectors[$key])(1, $null)[0]; } echo "Maak een draaitabel met als kolommen {$stuff[$rc[0]][1]} en als rijen {$stuff[$rc[1]][1]} met de gemiddelden van de resultaten van {$stuff[$rest[0]][0]} {$s[0]} van {$stuff[$rest[1]][0]} {$s[1]}.\n"; }, function () use ($selectors, $stuff) { // 2 $ges = ($selectors['geslachten'])(1, $null)[0]; $ond = ($selectors['onderdelen'])(1, $null)[0]; $lft = ($selectors['leeftijden'])(1, $null)[0]; $gram = array("histogram", "frequentiepolygoon", "cumulatief frequentiepolygoon", "relatief cumulatief frequentiepolygoon")[rand(0,3)]; echo "Maak van de $ges van leeftijd $lft bij $ond een frequentietabel met een passende klassenindeling (ongeveer 7 klassen) en maak daarbij een $gram.\n"; }, function () use ($selectors, $stuff) { // 3 $ges = ($selectors['geslachten'])(1, $null)[0]; $ond = ($selectors['onderdelen'])(1, $null)[0]; echo "Onderzoek of de $ges gedurende hun tijd op school beter worden in $ond.\n"; }, function () use ($selectors, $stuff) { // 4 $times = rand(2,4); $ges = ($selectors['geslachten'])(1, $null)[0]; echo("Maak een overzicht van de leerlingnummers van de $ges die (uitgaande van deze gegevens) precies $times jaren mee hebben gedaan aan de sportdag. Een leerling die in 1 jaar een prestatie heeft bij minstens 1 van de 6 sporten heeft dat jaar meegedaan\n"); }, function () use ($selectors, $stuff) { // 5 $ges = ($selectors['geslachten'])(1, $null)[0]; $lft = ($selectors['leeftijden'])(1, $null)[0]; $jaar = ($selectors['jaren'])(1, $null)[0]; echo("Onderzoek wie het beste heeft gepresteerd van de $ges van de leeftijd $lft in het jaar $jaar.\n"); }, function () use ($selectors, $stuff) { // 6 $ges = ($selectors['geslachten'])(1, $null)[0]; $lft = ($selectors['leeftijden'])(1, $null)[0]; $jaar = ($selectors['jaren'])(1, $null)[0]; $onds = ($selectors['onderdelen'])(2, $null); echo("Maak een puntenwork van de $ges van leeftijd $lft in het jaar $jaar met op de horizintale as de resultaten van onderdeel {$onds[0]} en op de verticale as de resutaten van onderdeel {$onds[1]}. Geef een onderbouwde interpretatie van de puntenwolk\n"); }, function () use ($selectors, $stuff) { // 7 $ges = ($selectors['geslachten'])(1, $null)[0]; $ond = ($selectors['onderdelen'])(1, $null)[0]; $lft = ($selectors['leeftijden'])(1, $null)[0]; echo("Vat de gegevens in het document op als een representatieve steekproef is van alle middelbare scholieren en bereken het betrouwbaarheidsinterval van het resultaat van de $ges van leeftijd $lft bij het onderdeel $ond en geef aan welke informatie dat in deze context geeft (zie hoofdstuk 2 in boek 1).\n"); }, function () use ($selectors, $stuff) { // 8 $ges = ($selectors['geslachten'])(1, $null)[0]; $lft = ($selectors['leeftijden'])(1, $null)[0]; $jaar = ($selectors['jaren'])(1, $null)[0]; echo("Onderzoek bij welk onderdeel van de $ges van leeftijd $lft in het jaar $jaar de verdeling van de prestaties het meest lijkt op een normale verdeling.\n"); }, function () use ($selectors, $stuff) { // 9 $ges = ($selectors['geslachten'])(1, $null)[0]; $lft = ($selectors['leeftijden'])(1, $null)[0]; $ond = ($selectors['onderdelen'])(1, $null)[0]; $jaren = ($selectors['jaren'])(2, $null); echo("Zoek uit wat het begrip effectgrootte betekent en gebruik dat begrip om te onderzoeken of de gemiddelde prestatie van de $ges van de leeftijd $lft bij het onderdeel $ond in het jaar {$jaren[0]} ongeveer gelijk/duidelijk beter/duidelijk slechter zijn dan in {$jaren[1]}\n"); }, function () use ($selectors, $stuff) { // 10 $ges = ($selectors['geslachten'])(1, $null)[0]; $lft = ($selectors['leeftijden'])(1, $null)[0]; $ond = ($selectors['onderdelen'])(1, $null)[0]; $jaar = ($selectors['jaren'])(1, $null)[0]; echo("Maak een boxplot van de resultaten van de $ges van de leeftijd $lft in het jaar $jaar bij het onderdeel $ond.\n"); }, function () use ($selectors, $stuff) { // 11 $ges = ($selectors['geslachten'])(1, $null)[0]; $lft = ($selectors['leeftijden'])(1, $null)[0]; $ond = ($selectors['onderdelen'])(1, $null)[0]; $jaar = ($selectors['jaren'])(1, $null)[0]; echo("Bereken het gemiddelde resultaat van de $ges van de leeftijd $lft in het jaar $jaar bij het onderdeel $ond, maar neem alleen de $ges mee in het gemiddelde die aan alle 6 de onderdelen mee hebben gedaan\n"); }, function () use ($selectors, $stuff) { // 12 $ges = ($selectors['geslachten'])(1, $null)[0]; $lft = ($selectors['leeftijden'])(1, $null)[0]; $ond = ($selectors['onderdelen'])(1, $null)[0]; $jaar = ($selectors['jaren'])(1, $null)[0]; echo("Maak van de $ges van leeftijd $lft in jaar $jaar bij onderdeel $ond een cirkeldiagram met de sectoren slecht, gemiddeld en goed.\n"); } ]; $alg = array(); for ($i = 1; $i < 12; $i++) { $alg[] = $i; } foreach (array('BOON', 'LIGM', 'TEUN', 'SNEL') as $doc) { for ($groep = 1; $groep <= 10; $groep++) { $vragen = select_no($alg, 6, $null); $vragen[] = 0; shuffle($vragen); $i = 1; echo("Doc: $doc, Groep: $groep\n\n"); foreach ($vragen as $no) { echo("$i. "); $i++; ($functions[$no])(); echo("\n"); } //print_r($vragen); //exit; } } $i = 0; foreach ($functions as $func) { $i++; echo($i.". "); ($func)(); echo("\n"); } ?>