Unieke groepen(personen) maken met PHP

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Fred Binnenpret

Fred Binnenpret

23/09/2008 12:02:00
Quote Anchor link
Ik wil een systeem maken wat groepjes genereerd voor mijn klas. Er komt namelijk vaak ter spraken dat ze te vaak met de zelfde personen in de groep zitten, en met sommige mensen nog nooit hebben samengewerkt.

Ik wil hier een oplossing voor vinden. Wellicht met PHP.

- 20+ leerlingen
- Groepsaantal is niet altijd het zelfde. Ik wil het zo maken dat je moet ingeven hoeveel personen per groep en dat hij dan vervolgens de meest unieke combinaties(groepjes) geeft.

Ik zit al een tijd te denken, maar is hier een truckje voor?

Bedankktt
Gewijzigd op 01/01/1970 01:00:00 door Fred Binnenpret
 
PHP hulp

PHP hulp

03/05/2024 03:15:48
 
RvW Of toch niet

RvW Of toch niet

23/09/2008 12:08:00
Quote Anchor link
nvm heb je vraag verkeerd gelezen.
Gewijzigd op 01/01/1970 01:00:00 door RvW Of toch niet
 
Arjan Kapteijn

Arjan Kapteijn

23/09/2008 12:08:00
Quote Anchor link
Wil je iedere keer een random situatie maken, of echt een historie bij gaan houden? In het laatste geval word het vrij lastig want volgens mij moeten we dan met algoritmes gaan werken.
 
Fred Binnenpret

Fred Binnenpret

23/09/2008 12:40:00
Quote Anchor link
een historie bijhouden.. want random lost nog steeds het probleem niet op denk ik.
 
Robert Deiman

Robert Deiman

23/09/2008 13:18:00
Quote Anchor link
@Gommers

Dan moeten we daar dus echt een algoritme voor gaan bedenken. Alleen kijken wie al met elkaar in de groep hebben gezeten werkt niet. Dat is nog niet zo eenvoudig dus
 
Fred Binnenpret

Fred Binnenpret

23/09/2008 13:56:00
Quote Anchor link
Zoals ik al dacht, even experimenteren met random. Misschien is het een mogelijkheid
 
Martijn Wieringa

Martijn Wieringa

23/09/2008 15:31:00
Quote Anchor link
Op basis van 'random' groepering..

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php

    // Bepaal leden
    $leden = array('Aasted-Madsen-van Stiphout, J.D.M.P. (CDA)', 'Aboutaleb, A. (PvdA)', 'Agema, M. (PVV)', 'Albayrak, N. (PvdA)', 'Anker, E.W. (ChristenUnie)', 'Aptroot, Ch.B. (VVD)', 'Arib, K. (PvdA)', 'Asscher, E. (VVD)', 'Atsma, J.J. (CDA)', 'Azough, N. (GroenLinks)', 'Baalen, J.C. van (VVD)', 'Balkenende, J.P. (CDA)', 'Bashir, F. (SP)', 'Beek, W.I.I. van (VVD)', 'Beeten, R.H. van de (CDA)', 'Bemelmans-Videc, M.L. (CDA)', 'Berg, G. van den (SGP)', 'Besselink, M. (PvdA)', 'Biermans, G.J.J. (VVD)', 'Bijleveld-Schouten, A.Th.B. (CDA)', 'Bijsterveld, S.Ch. van (CDA)', 'Bijsterveldt-Vliegenthart, J.M. van (CDA)', 'Bilder, E.J. (CDA)', 'Biskop, J.J.G.M. (CDA)', 'Blanksma-van den Heuvel, P.J.M.G. (CDA)', 'Blok, S.A. (VVD)', 'Blom, L. (PvdA)', 'Bochove, B.J. van (CDA)', 'Boekestijn, A.J. (VVD)', 'Boelhouwer, A.J.W. (PvdA)', 'Boer, R. de (ChristenUnie)', 'Böhler, B. (GroenLinks)', 'Bommel, H. van (SP)', 'Bos, W.J. (PvdA)', 'Bosma, M. (PVV)', 'Bouchibti, S. (PvdA)', 'Bouwmeester, L.Th. (PvdA)', 'Brinkman, H. (PVV)', 'Broeke, J.H. ten (VVD)', 'Broekers-Knol, A. (VVD)', 'Burg, B.I. van der (VVD)', 'Bussemaker, M. (PvdA)', 'Camp, W.G.J.M. van de (CDA)', 'Çörüz, C. (CDA)', 'Cramer, E.A. (ChristenUnie)', 'Cramer, J.M. (PvdA)', 'Dam, M.H.P. van (PvdA)', 'Depla, G.C.F.M. (PvdA)', 'Dezentjé Hamming, I. (VVD)', 'Dibi, T. (GroenLinks)', 'Dijck, A.P.C. van (PVV)', 'Dijk, J.J. van (CDA)', 'Dijk, J.J. van (SP)', 'Dijken, M.J. van (PvdA)', 'Dijksma, S.A.M. (PvdA)', 'Dijsselbloem, J.R.V.A. (PvdA)', 'Diks, L.I. (GroenLinks)', 'Doek, H.A. (CDA)', 'Dölle, A.H.M. (CDA)', 'Donner, J.P.H. (CDA)', 'Driel, S.J. van (PvdA)', 'Dupuis, H.M. (VVD)', 'Duthler, A.W. (VVD)', 'Eigeman, J.H. (PvdA)', 'Eijsink, A.M.C. (PvdA)', 'Elzinga, A. (SP)', 'Engels, J.W.M. (D66)', 'Essers, P.H.J. (CDA)', 'Eurlings, C.M.P.S. (CDA)', 'Ferrier, K.G. (CDA)', 'Franken, H. (CDA)', 'Fritsma, S.R. (PVV)', 'Geel, P.L.B.A. van (CDA)', 'Gent, W. van (GroenLinks)', 'Gerkens, A.M.V. (SP)', 'Gerven, H.P.J. van (SP)', 'Gesthuizen, S.M.J.G. (SP)', 'Gillard, Ch.D.M. (PvdA)', 'Goijert, A.A.E. (CDA)', 'Graaf, G.J. de (VVD)', 'Graus, D.J.G. (PVV)', 'Griffith, L.J. (VVD)', 'Haersma Buma, S. van (CDA)', 'Halsema, F. (GroenLinks)', 'Ham, B. van der (D66)', 'Hamer, M.I. (PvdA)', 'Haubrich-Gooskens, C.E.Th.M. (PvdA)', 'Haverkamp, M.C. (CDA)', 'Heemskerk, F. (PvdA)', 'Heerts, A.J.M. (PvdA)', 'Heijnen, P.M.M. (PvdA)', 'Hendrikx, J.A.M. (CDA)', 'Hermans, L.M.L.H.A. (VVD)', 'Hessels, J.W.M.M.J. (CDA)', 'Heugten, R.A.C. van (CDA)', 'Hijum, Y.J. van (CDA)', 'Hillen, J.S.J. (CDA)', 'Hirsch Ballin, E.M.H. (CDA)', 'Hoeve, H. ten (OSF)', 'Hoeven, M.J.A. van der (CDA)', 'Hofstra, P.H. (VVD)', 'Holdijk, G. (SGP)', 'Hoopen, J. ten (CDA)', 'Horn, G.H.M.M. ten (SP)', 'Horst, G. ter (PvdA)', 'Huijbregts-Schiedon, W.H. (VVD)', 'Huizinga-Heringa, J.C. (ChristenUnie)', 'Irrgang, E. (SP)', 'Jacobi, L. (PvdA)', 'Jager, H. (CDA)', 'Jager, J.C. de (CDA)', 'Janse de Jonge, E.J. (CDA)', 'Jansen, P.F.C. (SP)', 'Joldersma, F. (CDA)', 'Jonker, C.W.A. (CDA)', 'Kalma, P. (PvdA)', 'Kamp, H.G.J. (VVD)', 'Kant, A.C. (SP)', 'Kappen, F.E. van (VVD)', 'Karabulut, S. (SP)', 'Klein Breteler, J.J.A.H. (CDA)', 'Klink, A. (CDA)', 'Kneppers-Heynert, E.M. (VVD)', 'Knops, R.W. (CDA)', 'Koenders, A.G. (PvdA)', 'Koffeman, N.J. (PvdD)', 'Koopmans, G.P.J. (CDA)', 'Koppejan, A.J. (CDA)', 'Koser Kaya, F. (D66)', 'Kox, M.J.M. (SP)', 'Kraneveldt-van der Veen, M. (PvdA)', 'Krom, P. de (VVD)', 'Kuiken, A.H. (PvdA)', 'Kuiper, R. (ChristenUnie)', 'Lagerwerf-Vergunst, E.F. (ChristenUnie)', 'Langkamp, M.C. (SP)', 'Laurier, J.P. (GroenLinks)', 'Leerdam, J.A.W.J. (PvdA)', 'Leeuwen, H. van (SP)', 'Leijnse, F. (PvdA)', 'Leijten, R.M. (SP)', 'Lempens, P.P.E. (SP)', 'Leunissen, K.M.L. (CDA)', 'Linden, P.R.H.M. van der (CDA)', 'Linthorst, M.Y. (PvdA)', 'Luijben, A.P.M. (SP)', 'Madlener, B. (PVV)', 'Marijnissen, J.G.Ch.A. (SP)', 'Mastwijk, J.J. (CDA)', 'Meindertsma, M.C. (PvdA)', 'Meulenbelt, A.H. (SP)', 'Meurs, P.L. (PvdA)', 'Middelkoop, E. van (ChristenUnie)', 'Miltenburg, A. van (VVD)', 'Neppérus, H. (VVD)', 'Nerée tot Babberich, F.J.F.M. de (CDA)', 'Nicolaï, A. (VVD)', 'Noten, H.C.P. (PvdA)', 'Omtzigt, P.H. (CDA)', 'Ormel, H.J. (CDA)', 'Ortega-Martijn, C.A. (ChristenUnie)', 'Ouwehand, E. (PvdD)', 'Pater-van der Meer, M.L. de (CDA)', 'Pechtold, A. (D66)', 'Peters, P.W.J. (SP)', 'Plasterk, R.H.A. (PvdA)', 'Polderman, H.J. (SP)', 'Poppe, R.J.L. (SP)', 'Putters, K. (PvdA)', 'Quik-Schuijt, A.C. (SP)', 'Raak, A.A.G.M. van (SP)', 'Rehwinkel, J.P. (PvdA)', 'Remkes, J.W. (VVD)', 'Reuten, G.A.Th.M. (SP)', 'Roefs, C.W.J.M. (PvdA)', 'Roemer, E.G.M. (SP)', 'Rooij, N. de (SP)', 'Roon, R. de (PVV)', 'Rosenthal, U. (VVD)', 'Rouvoet, A. (ChristenUnie)', 'Rouwe, S. de (CDA)', 'Russell, P.W.L. (CDA)', 'Rutte, M. (VVD)', 'Samsom, D.M. (PvdA)', 'Sap, J.C.M. (GroenLinks)', 'Schaap, S. (VVD)', 'Schermers MA, J.P. (CDA)', 'Schinkelshoek, J. (CDA)', 'Schippers, E.I. (VVD)', 'Schouw, A.G. (D66)', 'Schreijer-Pierik, J.M.G. (CDA)', 'Schuurman, E. (ChristenUnie)', 'Slager, C. (SP)', 'Slagter-Roukema, T.M. (SP)', 'Slob, A. (ChristenUnie)', 'Smaling, E.M.A. (SP)', 'Smeets, P.E. (PvdA)', 'Smilde, M.Ch.A. (CDA)', 'Smits, M. (SP)', 'Snijder-Hazelhoff, J.F. (VVD)', 'Spekman, J.L. (PvdA)', 'Spies, J.W.E. (CDA)', 'Staaij, C.G. van der (SGP)', 'Sterk, W.R.C. (CDA)', 'Strik, M.H.A. (GroenLinks)', 'Swenker, P. (VVD)', 'Sylvester, J.J. (PvdA)', 'Tan, I.Y. (PvdA)', 'Tang, P.J.G. (PvdA)', 'Teeven MPM, F. (VVD)', 'Terpstra, G.H. (CDA)', 'Thieme, M.L. (PvdD)', 'Thissen, Ch.P. (GroenLinks)', 'Tichelaar, J. (PvdA)', 'Timmer, A.J. (PvdA)', 'Timmerman-Buck, Y.E.M.A. (CDA)', 'Timmermans, F.C.G.M. (PvdA)', 'Toorenburg, M.M. van (CDA)', 'Uitslag, A.S. (CDA)', 'Ulenbelt, P. (SP)', 'Vedder-Wubben, H.C.M. (CDA)', 'Veen, E. van der (PvdA)', 'Velzen, K. van (SP)', 'Vendrik, C.C.M. (GroenLinks)', 'Verbeet, G.A. (PvdA)', 'Verburg, G. (CDA)', 'Verdonk, M.C.F. (lid Verdonk)', 'Verhagen, M.J.M. (CDA)', 'Vermeij, R.A. (PvdA)', 'Vietsch, C.A. (CDA)', 'Vliegenthart, A. (SP)', 'Vlies, B.J. van der (SGP)', 'Vogelaar, C.P. (PvdA)', 'Voordewind, J.S. (ChristenUnie)', 'Vos, M.L. (PvdA)', 'Vries, J.G de (CDA)', 'Vries, J.M. de (CDA)', 'Vries, K.G. de (PvdA)', 'Vries-Leggedoor, G. de (CDA)', 'Vroonhoven-Kok, J.N. van (CDA)', 'Waalkens, H.E. (PvdA)', 'Weekers, F.H.H. (VVD)', 'Werner, F.J.M. (CDA)', 'Westerveld, M. (PvdA)', 'Wiegman-van Meppelen Scheppink, E.E. (ChristenUnie)', 'Wilders, G. (PVV)', 'Willems, R. (CDA)', 'Willemse-van der Ploeg, A.A.M. (CDA)', 'Wit, J.M.A.M. de (SP)', 'Wolbert, A.G. (PvdA)', 'Yildirim, D. (fractie Yildirim)', 'Zijlstra, H. (VVD)');

    // Bepaal groepen
    $groepen = array('Groep A', 'Groep B', 'Groep C', 'Groep D', 'Groep E', 'Groep F', 'Groep G', 'Groep H', 'Groep I', 'Groep J');


    echo 'We verdelen ' . sizeof($leden) . ' leden over ' . sizeof($groepen) . ' groepen.';


    // Schud leden
    shuffle($leden);

    $leden_per_groep = floor(sizeof($leden) / sizeof($groepen));
    $leden_rest = (sizeof($leden) % sizeof($groepen));

    $offset = 0;

    for($i = 0; $i < sizeof($groepen); $i++)
    {

        $aantal = $leden_per_groep;

        if($i < $leden_rest)
        {

            $aantal++;
        }


        $array = array_slice($leden, $offset, $aantal);
        $offset += $aantal;

        echo '<br><br><b>Groep: ' . $groepen[$i] . '</b> (' . sizeof($array) . ' leden)<br>' . implode('<br>', $array);
    }


?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.