/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Noget logisk praktisk gøgleri :/
Fra : Jens


Dato : 23-05-05 10:28

Bakser med at finde "løsningen" til dette:
Leger med noget turnerings-pjat, og afhængigt af antal puljer i en gruppe
vil jeg gerne skrive rundenavnet ud.
alle starter på fase 0 = indledende kampe, og næste runde uafhængigt af
antal puljer hedder 1, 2 osv.
hvis der er 2 puljer er fase 1 == semi finale (som jo er fase == 4 i
nedenstående kode)

$antalPuljer kan være alt fra 1-16.

Mit spørgsmål er, hvordan får jeg moduleret min $fase så jeg får det
korrekte fasenavn skrevet ud?

$fase = 32/ $antalPuljer/NOGET*ANDET ?????

Nedenstående model er som det ser ud ved standard(16 puljer):
if($fase == 0){
echo "Preliminary";
} elseif($fase == 1){
echo "1/16 finals";
} elseif($fase == 2){
echo "1/8 finals";
} elseif($fase == 3){
echo "1/4 finals";
} elseif($fase == 4){
echo "semi finals";
} elseif($fase == 5){
echo "final";
}





 
 
Jacob Atzen (23-05-2005)
Kommentar
Fra : Jacob Atzen


Dato : 23-05-05 11:12

On 2005-05-23, Jens <jens@listic.dk> wrote:
> Bakser med at finde "løsningen" til dette:
> Leger med noget turnerings-pjat, og afhængigt af antal puljer i en gruppe
> vil jeg gerne skrive rundenavnet ud.
> alle starter på fase 0 = indledende kampe, og næste runde uafhængigt af
> antal puljer hedder 1, 2 osv.
> hvis der er 2 puljer er fase 1 == semi finale (som jo er fase == 4 i
> nedenstående kode)
>
> $antalPuljer kan være alt fra 1-16.
>
> Mit spørgsmål er, hvordan får jeg moduleret min $fase så jeg får det
> korrekte fasenavn skrevet ud?
>
> $fase = 32/ $antalPuljer/NOGET*ANDET ?????

$antalRunder = ceil(log($antalPuljer,2));
switch($antalRunder - $aktuelRunde) {
case 0: print "Finale"; break;
case 1: print "Semifinale"; break;
case 2: print "Kvartfinale"; break;
}

Ovenstående er ikke testet, men du kan se ideen.

--
Med venlig hilsen
- Jacob Atzen

Jens (23-05-2005)
Kommentar
Fra : Jens


Dato : 23-05-05 11:50

Tak for dit svar, men forstår den ikke helt - giver jeg den:
$antalPuljer = 2;
$aktuelRunde = 0;
får jeg: case 1, men vil gerne have case 5 :-/

$antalRunder = ceil(log($antalPuljer,2));
switch($antalRunder - $aktuelRunde) {
case 0: print "Finale"; break;
case 1: print "Semifinale"; break;
case 2: print "1/4"; break;
case 3: print "1/8"; break;
case 4: print "1/16"; break;
case 5: print "Preliminary"; break;
}




"Jacob Atzen" <jacob@aub.dk> skrev i en meddelelse
news:slrnd93b3l.ddl.jacob@tank.aub.dk...
> On 2005-05-23, Jens <jens@listic.dk> wrote:
>> Bakser med at finde "løsningen" til dette:
>> Leger med noget turnerings-pjat, og afhængigt af antal puljer i en gruppe
>> vil jeg gerne skrive rundenavnet ud.
>> alle starter på fase 0 = indledende kampe, og næste runde uafhængigt af
>> antal puljer hedder 1, 2 osv.
>> hvis der er 2 puljer er fase 1 == semi finale (som jo er fase == 4 i
>> nedenstående kode)
>>
>> $antalPuljer kan være alt fra 1-16.
>>
>> Mit spørgsmål er, hvordan får jeg moduleret min $fase så jeg får det
>> korrekte fasenavn skrevet ud?
>>
>> $fase = 32/ $antalPuljer/NOGET*ANDET ?????
>
> $antalRunder = ceil(log($antalPuljer,2));
> switch($antalRunder - $aktuelRunde) {
> case 0: print "Finale"; break;
> case 1: print "Semifinale"; break;
> case 2: print "Kvartfinale"; break;
> }
>
> Ovenstående er ikke testet, men du kan se ideen.
>
> --
> Med venlig hilsen
> - Jacob Atzen



Jens (23-05-2005)
Kommentar
Fra : Jens


Dato : 23-05-05 12:03

Typisk, lige som jeg skriver til gruppen får jeg tweaked scriptet.

tusind tak for løsningen, Jacob!

$antalRunder = ceil(log($antalPuljer,2));
if($faseDef == 0){
$argument = 5;
} else {
$argument = $antalRunder - $aktuelRunde+1;
}
switch($argument) {
case 0: print "Finale"; break;
case 1: print "Semifinale"; break;
case 2: print "1/4"; break;
case 3: print "1/8"; break;
case 4: print "1/16"; break;
case 5: print "Preliminary"; break;
}


"Jens" <jens@listic.dk> skrev i en meddelelse
news:4291b56f$0$67255$157c6196@dreader2.cybercity.dk...
> Tak for dit svar, men forstår den ikke helt - giver jeg den:
> $antalPuljer = 2;
> $aktuelRunde = 0;
> får jeg: case 1, men vil gerne have case 5 :-/
>
> $antalRunder = ceil(log($antalPuljer,2));
> switch($antalRunder - $aktuelRunde) {
> case 0: print "Finale"; break;
> case 1: print "Semifinale"; break;
> case 2: print "1/4"; break;
> case 3: print "1/8"; break;
> case 4: print "1/16"; break;
> case 5: print "Preliminary"; break;
> }
>
>
>
>
> "Jacob Atzen" <jacob@aub.dk> skrev i en meddelelse
> news:slrnd93b3l.ddl.jacob@tank.aub.dk...
>> On 2005-05-23, Jens <jens@listic.dk> wrote:
>>> Bakser med at finde "løsningen" til dette:
>>> Leger med noget turnerings-pjat, og afhængigt af antal puljer i en
>>> gruppe
>>> vil jeg gerne skrive rundenavnet ud.
>>> alle starter på fase 0 = indledende kampe, og næste runde uafhængigt af
>>> antal puljer hedder 1, 2 osv.
>>> hvis der er 2 puljer er fase 1 == semi finale (som jo er fase == 4 i
>>> nedenstående kode)
>>>
>>> $antalPuljer kan være alt fra 1-16.
>>>
>>> Mit spørgsmål er, hvordan får jeg moduleret min $fase så jeg får det
>>> korrekte fasenavn skrevet ud?
>>>
>>> $fase = 32/ $antalPuljer/NOGET*ANDET ?????
>>
>> $antalRunder = ceil(log($antalPuljer,2));
>> switch($antalRunder - $aktuelRunde) {
>> case 0: print "Finale"; break;
>> case 1: print "Semifinale"; break;
>> case 2: print "Kvartfinale"; break;
>> }
>>
>> Ovenstående er ikke testet, men du kan se ideen.
>>
>> --
>> Med venlig hilsen
>> - Jacob Atzen
>
>



Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408941
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste