Deal or no deal

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Tjark

Tjark

22/03/2007 07:45:00
Quote Anchor link
Hoi,

Ik ben van plan om PHP te leren en ik dacht: laat ik eens wat maken dan ontdek je een heleboel. Dus ik ging Deal or no Deal maken maar dat werd een lange brij. Toen dacht ik dat het wel moest lukken met arrays dus ik startte maar ik kon er niet precies uitkomen. Daarom vraag ik hier jullie hulp

Dit is mijn script zoals ik het nu heb:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php

$koffers
= array ('jouw koffer', 'koffer1', 'koffer2', 'koffer3', 'koffer4', 'koffer5', 'koffer6', 'koffer7', 'koffer8', 'koffer9', 'koffer10', 'koffer11', 'koffer12', 'koffer13', 'koffer14', 'koffer15', 'koffer16', 'koffer17', 'koffer18', 'koffer19', 'koffer20', 'koffer21', 'koffer22', 'koffer23', 'koffer24', 'koffer25');
foreach ($koffers as $kofferwaarde) {
    $koffers = rand (1,26);
}

echo $koffers, "<br>";



?>


bij voorbaat dank
 
PHP hulp

PHP hulp

05/11/2024 16:30:57
 
- wes  -

- wes -

22/03/2007 08:41:00
Quote Anchor link
en je vraag is?
 
Rudie dirkx

rudie dirkx

22/03/2007 08:57:00
Quote Anchor link
Je bent van plan om PHP te leren dus je gaat Deal or no deal maken!? Dat lijkt me geen geweldige start... Wat denk je van een formulier te maken met mooie waarde controle, dat doe je nl. het meest.
Dit lijkt me een beetje hoog gegrepen. Over een maandje maak je een veel beter Deal or no deal script.
 
Robert Deiman

Robert Deiman

22/03/2007 09:02:00
Quote Anchor link
@Tjark

Misschien is het beter de koffers gewoon te nummeren, van 1-26 en beragen voor die koffers te definiëren:

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
<?php
//Deal or No Deal

//Vul een array met de verschillende mogelijke bedragen

$bedragen = array (0.05,0.10,0.20,0.50,1,2,5,10,20,50,100,200,500,1000,2000,5000,10000,20000,50000,100000,200000,500000,1000000,2000000,5000000);
//hussel de bedragen door elkaar -> Draagt niet bij aan jou random keuze, maar gooit de koffers door elkaar, zodat bepaalde bedragen ook steeds bij een andere kandidaat komen
shuffle($bedragen);


//kies random een koffer uit die voor jou is (een array begint bij 0 te tellen.
//Eveneens kan je het aantal bedragen veranderen, zonder dat het mis gaat:

$jouw_koffer=rand(0,count($bedragen)-1);

//Maak bedragen bekend
foreach($bedragen as $key => $value){
    echo 'Koffer'.$key.' bevat een waarde van:'.$value;
    //als het de koffer is die voor jou is geef dat dan aan
    if($key == $jouw){
        echo '   --> Dit is jouw koffer';
        }

    echo '<br />';
    }

?>


Edit:

Zo heel hoog gegrepen lijkt me dit anders nog niet. Het is wel goed om goed met arrays te leren werken, die zal je nog veel tegenkomen tijdens het scripten.
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
 
Tim

tim

22/03/2007 12:58:00
Quote Anchor link
Ik was net bezig een dealornodeal te maken, toen kwam ik dit tegen.
(ben nog maar een beginner:P
Gewijzigd op 01/01/1970 01:00:00 door tim
 
Tjark

Tjark

22/03/2007 15:36:00
Quote Anchor link
Bedankt
Gewijzigd op 01/01/1970 01:00:00 door Tjark
 
Marien xD

Marien xD

22/03/2007 15:39:00
Quote Anchor link
Omdat count bij 1 begint en je moet het weten vanaf 0
 
Jacco Engel

Jacco Engel

22/03/2007 15:39:00
Quote Anchor link
omdat je array bij 0 begint en tot 25 gaat.

Count gaat van 1 tot 26

(altans in dit geval)
Gewijzigd op 01/01/1970 01:00:00 door Jacco Engel
 
Tjark

Tjark

22/03/2007 15:41:00
Quote Anchor link
ja ik zag het al ik had koffer 0 over het hoofd gezien :s
 
Citroen Anoniem Graag

Citroen Anoniem Graag

22/03/2007 16:15:00
Quote Anchor link
deal or no deal heeft 20 koffers ;)
 
Nicoow Unknown

Nicoow Unknown

22/03/2007 16:30:00
Quote Anchor link
@freek
kijk jij graag naar die beau ofzow??
dat je dat allemaal zo goed weet =P
 
Citroen Anoniem Graag

Citroen Anoniem Graag

22/03/2007 17:03:00
Quote Anchor link
@Nico, dat ik het allemaal zo goed weet... ik weet alleen dat er 20 koffertjes zijn, ben zelf ook wel eens begonnen met een deal or no deal script vandaar, maar ik ben gestopt toen ik een formule moest bedenken hoe hoog het bod van de bank is.
 
Leroy Boerefijn

Leroy Boerefijn

22/03/2007 17:09:00
Quote Anchor link
hoewel dat helemaal niet zo moeilijk hoeft te zijn..

EDIT: als je nou gewoon kijkt welke getallen er nog over zijn.. deze tel je bij elkaar op en dan deel je het door het aantal overgebleven getallen.. dan heb je gewoon het gemiddelde.. maar dat lijkt mij goed..
Gewijzigd op 01/01/1970 01:00:00 door Leroy Boerefijn
 
Robert Deiman

Robert Deiman

22/03/2007 17:18:00
Quote Anchor link
Die formule is inderdaad erg ingewikkeld.
- Ze bepalen het totaal bedrag, en vervolgens het gemiddelde wat er nog in de koffers zit.
- Dan gaan ze kijken hoeveel koffers er onder het gemiddelde zitten en hoeveel erboven
- Aan de hand van deze gegevens berekenen ze de kans dat het gemiddelde eruit gaat.
- Met de kans en het gemiddelde gaan ze opnieuw aan het rekenen -> is de kans dat er iets boven het gemiddelde uit gaat kleiner dan 50% dan krijg je ook een lager bod. (bijvoorbeeld 75% kans dat het lager is dan gem -> bod is dan ongeveer 1/4 van het gemiddelde (dit is wel een gok), dus erg laag voor het gevoel, maar een logisch bod.)

Hier gaan dus een aantal berekeningen doorheen voor je op een goed bod uit komt.

@tjark
Hou er rekening mee dat je ook de boel moet kunnen bewerken en bewaren -> welke koffers zijn eruit en welke niet, en hoeveel koffers moet je selecteren. (wordt een combinatie van php en javascript, en voor opslaan van de arrays kan je een database of textfile gebruiken. Ik zou db doen)
 
Nicoow Unknown

Nicoow Unknown

22/03/2007 17:36:00
Quote Anchor link
maar aangezien k nu toch met een reeks php games bezig ben lijkt mij dit eelijk gezegd ook wel leuk idee alleen weet iemand wat de waardes van de koffers zijn??
ken dat namelijk niet vinden :S
 
Robert Deiman

Robert Deiman

22/03/2007 17:49:00
Quote Anchor link
Ik heb de waarden opgezocht, zie onderaan dit bericht. De afbeelding is een foto uit een aflevering van Deal or No Deal op Talpa. Het bleek dat er maar 20 koffertjes zijn.

Overigens heb ik het al een beetje uitgebreid:
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
37
38
39
40
41
42
<?php
//Deal or No Deal

// is er een koffer gekozen, maak dan een variabele aan waarin de keuze wordt opgeslagen    

if($_SERVER['REQUEST_METHOD'] == "POST" && !empty($_POST['koffer'])){
    $mijn_koffer=intval($_POST['koffer'])-1;
    }


//is er nog geen koffer gekozen, geef dan een formulier weer waarbij je een keuze kan maken.
//doe dit met radiobuttons, zodat er maar 1 koffer kan worden gekozen

if(!isset($mijn_koffer)){
    echo 'Selecteer je koffer:';
    for($j=1;$j<=25;$j++){
        echo '<form name="dealnodeal" method="post" action="'.$_SERVER['PHP_SELF'].'">';
        echo '<input type="radio" name="koffer" value="'.$j.'"><label>Kies koffer '.$j.'</label><br />';
        }

    echo '<input type="submit" value="submit" name="submit"></form>';
    }


//is er een koffer toegewezen, ga dan door naar het "spelgedeelte"
if(!empty($mijn_koffer)){
    //Vul een array met de verschillende mogelijke bedragen
    $bedragen = array (0.05,0.10,0.20,0.50,1,2,5,10,20,50,100,200,500,1000,2000,5000,10000,20000,50000,100000,200000,500000,1000000,2000000,5000000);
    //hussel de bedragen door elkaar -> Draagt niet bij aan jou random keuze, maar gooit de koffers door elkaar, zodat bepaalde bedragen ook steeds bij een andere kandidaat komen
    shuffle($bedragen);
    
    
    //kies random een koffer uit die voor jou is (een array begint bij 0 te tellen.
    //Eveneens kan je het aantal bedragen veranderen, zonder dat het mis gaat:
    
    //Maak bedragen bekend

    foreach($bedragen as $key => $value){
        $koffernummer=intval($key)+1;
        echo 'Koffer'. $koffernummer .' bevat een waarde van:'.$value;
        //als het de koffer is die voor jou is geef dat dan aan
        if($key == $mijn_koffer){
            echo '   --> Dit is jouw koffer';
            }

        echo '<br />';
        }
    }

    ?>

Edit:

Heb het ff voor je opgezocht:
1, 5, 10, 20, 50, 100, 200, 300, 400, 500, 1000, 5000, 10000, 20000, 30000, 40000, 50000, 100000, 125000, 250000

Afbeelding
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
 
Nicoow Unknown

Nicoow Unknown

22/03/2007 18:36:00
Quote Anchor link
ha bedankt :P
je hebt er opzich wel een goed koffertje select systeem van gemaakt :)
k had dat je zelf een nummer moest invullen maar dis veel beter en denk ook veiliger
 
Robert Deiman

Robert Deiman

22/03/2007 19:08:00
Quote Anchor link
Vind het wel een grappig idee ;) Dus zat een beetje mee te denken.. het bank systeem enzo zit er nog niet in.. :P Ik zit er nog wel over te denken om iets met namen te doen :P das ook wel leuk, dan kan je een koffertje selecteren die bij een naam hoort..
 
Nicoow Unknown

Nicoow Unknown

22/03/2007 19:37:00
Quote Anchor link
jah maar dan had k nog een vraag
hoe kan k alle koffertjes laten zien behalve de gene die jij gekozen hebt (om maar mee te beginnen n daarna om dan degene die je al hebt "weggestemd" niet laat zien..
iemand een idee??
 
Robert Deiman

Robert Deiman

22/03/2007 19:46:00
Quote Anchor link
Daar gebruik je de array_slice() functie voor:

http://nl3.php.net/manual/nl/function.array-slice.php
 
Nicoow Unknown

Nicoow Unknown

22/03/2007 19:55:00
Quote Anchor link
k heb nu deze code:
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
37
38
39
40
41
<?php
//Deal or No Deal

// is er een koffer gekozen, maak dan een variabele aan waarin de keuze wordt opgeslagen    

if($_SERVER['REQUEST_METHOD'] == "POST" && !empty($_POST['koffer'])){
    $mijn_koffer=intval($_POST['koffer']);
    }


//is er nog geen koffer gekozen, geef dan een formulier weer waarbij je een keuze kan maken.
//doe dit met radiobuttons, zodat er maar 1 koffer kan worden gekozen

if(!isset($mijn_koffer)){
    echo 'Selecteer je koffer:';
    for($j=1;$j<=20;$j++){
        echo '<form name="dealnodeal" method="post" action="'.$_SERVER['PHP_SELF'].'">';
        echo '<input type="radio" name="koffer" value="'.$j.'"><label>Kies koffer '.$j.'</label><br />';
        }

    echo '<input type="submit" value="submit" name="submit"></form>';
    }


//is er een koffer toegewezen, ga dan door naar het "spelgedeelte"
if(!empty($mijn_koffer)){
    //Vul een array met de verschillende mogelijke bedragen
    $input = array (1, 5, 10, 20, 50, 100, 200, 300, 400, 500, 1000, 5000, 10000, 20000, 30000, 40000, 50000, 100000, 125000, 250000);
    //hussel de bedragen door elkaar -> Draagt niet bij aan jou random keuze, maar gooit de koffers door elkaar, zodat bepaalde bedragen ook steeds bij een andere kandidaat komen
    shuffle($input);
    
    
    //kies random een koffer uit die voor jou is (een array begint bij 0 te tellen.
    //Eveneens kan je het aantal bedragen veranderen, zonder dat het mis gaat:
    
    //Maak bedragen bekend

         $koffernummer=intval($input)+1;

        //als het de koffer is die voor jou is geef dat dan aan
 echo 'U heeft koffer '; echo $mijn_koffer;
        echo '<br />';
$output = array_slice ($input, $mijn_koffer);
print $output;
        
    }

    ?>


maar nu geeft hij alleen van u heeft koffer 2 terug
(die koffer heb k gekozen)
en dan bij print $ouput zegt hij alleen array
 

Pagina: 1 2 volgende »



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.