Dit zou niet zo moeilijk moeten zijn,maar sinds ik op vakantie ben geweest kan ik niet meer nadenken. Nadat ik het getypt had ben ik eerst een half uur bezig geweest om het draaiend te krijgen want ik had er echt alles door elkaar gegooid; van Pascal tot aan VB, het kwam er allemaal in voor 
Maar nu het geen scripts errors meer geeft heb ik er een uur naar gekeken, maar kan niet bedenken waar het nou fout gaat.
De bedoeling is dat er een wedstrijd kalender wordt genereerd, dus er zijn bijvoorbeeld 18 clubs die 2 keer tegen elkaar spelen, dan zijn er per ronde 9 wedstrijden en 34 ronden. En elke wedstrijd mag natuurlijk maar 1 keer voor komen.
Dus had ik bedacht om een 2D arrray te maken:
[sub]$wedstrijd[$ronde][$thuis_club]=$uit_club;[/sub]
Waar de ronde,thuis en uit club in opgeslagen worden.
Om vervolgens met een while do de rondes langs te lopen:
[sub]while ($ronde<(($aantalclubs*2)-2))
{
echo "---------------------<br>\n";
$ronde++;
}[/sub]
Waarin de wedstrijden worden vastgelegd.
[sub]while ($thuis_club<=($aantalclubs/2))
{
$wedstrijd[$ronde][$thuis_club]=$uit_club;
echo "".$thuis_club."-".$wedstrijd[$ronde][$thuis_club]."<br>";
$thuis_club++;
}
[/sub]
Vervolgens had ik dit getypt om te controleren of een wedstrijd al voor komt waarna er een nieuwe $uit_club nummer wordt genereerd en de loop weer opnieuw wordt gestart.
$check_ronde=0;
$check_club=0;
[sub]
$check_ronde=0;
$check_club=0;
while ($check_ronde<(($aantalclubs*2)-2)) {
if ($check_club>=($aantalclubs/2)) {$check_club=0; $check_ronde++;}
if (($wedstrijd[$check_ronde][$check_club]==$uit_club || $thuis_club==$uit_club))
{
$uit_club=rand(1,9);
$check_ronde=0;
$check_club=0;
}
$check_club++;
}
[/sub]
Maar om een of andere reden blijft die hangen:
Fatal error: Maximum execution time of 30 seconds exceeded
en ik kan maar niet bedenken waarom, dus als iemand het wel ziet of een andere manier weet laat het horen (als mensen in je buurt vreemd kijken als je tegen je PC praat mag je het ook wel typen
)
Maar nu het geen scripts errors meer geeft heb ik er een uur naar gekeken, maar kan niet bedenken waar het nou fout gaat.
De bedoeling is dat er een wedstrijd kalender wordt genereerd, dus er zijn bijvoorbeeld 18 clubs die 2 keer tegen elkaar spelen, dan zijn er per ronde 9 wedstrijden en 34 ronden. En elke wedstrijd mag natuurlijk maar 1 keer voor komen.
Dus had ik bedacht om een 2D arrray te maken:
[sub]$wedstrijd[$ronde][$thuis_club]=$uit_club;[/sub]
Waar de ronde,thuis en uit club in opgeslagen worden.
Om vervolgens met een while do de rondes langs te lopen:
[sub]while ($ronde<(($aantalclubs*2)-2))
{
echo "---------------------<br>\n";
$ronde++;
}[/sub]
Waarin de wedstrijden worden vastgelegd.
[sub]while ($thuis_club<=($aantalclubs/2))
{
$wedstrijd[$ronde][$thuis_club]=$uit_club;
echo "".$thuis_club."-".$wedstrijd[$ronde][$thuis_club]."<br>";
$thuis_club++;
}
[/sub]
Vervolgens had ik dit getypt om te controleren of een wedstrijd al voor komt waarna er een nieuwe $uit_club nummer wordt genereerd en de loop weer opnieuw wordt gestart.
$check_ronde=0;
$check_club=0;
[sub]
$check_ronde=0;
$check_club=0;
while ($check_ronde<(($aantalclubs*2)-2)) {
if ($check_club>=($aantalclubs/2)) {$check_club=0; $check_ronde++;}
if (($wedstrijd[$check_ronde][$check_club]==$uit_club || $thuis_club==$uit_club))
{
$uit_club=rand(1,9);
$check_ronde=0;
$check_club=0;
}
$check_club++;
}
[/sub]
PHP:
1
| <?$aantalclubs=18;$ronde=1;while ($ronde<(($aantalclubs*2)-2)) { $thuis_club=1; while ($thuis_club<=($aantalclubs/2)){//-------------------------------------------------------------------------------------$check_ronde=0;$check_club=0;while ($check_ronde<(($aantalclubs*2)-2)) { if ($check_club>=($aantalclubs/2)) {$check_club=0; $check_ronde++;} if (($wedstrijd[$check_ronde][$check_club]==$uit_club || $thuis_club==$uit_club)) { $uit_club=rand(1,9); $check_ronde=0; $check_club=0; } $check_club++;}//------------------------------------------------------------------------------------- $wedstrijd[$ronde][$thuis_club]=$uit_club; echo "".$thuis_club."-".$wedstrijd[$ronde][$thuis_club]."<br>"; $thuis_club++; }echo "---------------------<br>\n";$ronde++;}?> |
Maar om een of andere reden blijft die hangen:
Fatal error: Maximum execution time of 30 seconds exceeded
en ik kan maar niet bedenken waarom, dus als iemand het wel ziet of een andere manier weet laat het horen (als mensen in je buurt vreemd kijken als je tegen je PC praat mag je het ook wel typen