Vraag over arrays
Code (php)
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
43
44
45
46
47
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
43
44
45
46
47
<?php if(isset($_POST['Calculate'])){
$_POST['money'] = ereg_replace("[^0-9]",'',$_POST['money']);
$_POST['money'] = round($_POST['money']);
if(empty($_POST['money'])){
echo "Error: You didn't enter any money.";
}else{
if(empty($_POST['player'])){
echo "Error: You didn't enter any player.";
}else{
if(($_POST['player']) == 1){
echo "Error: Please enter atleast 2 players.";
}else{
if(($_POST['player']) == 0){
echo "Error: Please enter atleast 2 players.";
}else{
if(($_POST['money']) == 0){
echo "Error: Please enter atleast $ 1.";
}else{
$totaal = $_POST['money'];
$aantal = $_POST['player'];
do
{
$array = array();
for($i=1; $i<$aantal; $i++)
{
$array[] = rand(1, $totaal);
}
}
while(array_sum($array) >= $totaal);
$array[] = $totaal - array_sum($array);
foreach($array as $value)
{
echo '$' .number_format($value). '<br/>';}
} //isset Post
} //no money
} //no days
} // 0 days
} // 1 player
} // $0?>
$_POST['money'] = ereg_replace("[^0-9]",'',$_POST['money']);
$_POST['money'] = round($_POST['money']);
if(empty($_POST['money'])){
echo "Error: You didn't enter any money.";
}else{
if(empty($_POST['player'])){
echo "Error: You didn't enter any player.";
}else{
if(($_POST['player']) == 1){
echo "Error: Please enter atleast 2 players.";
}else{
if(($_POST['player']) == 0){
echo "Error: Please enter atleast 2 players.";
}else{
if(($_POST['money']) == 0){
echo "Error: Please enter atleast $ 1.";
}else{
$totaal = $_POST['money'];
$aantal = $_POST['player'];
do
{
$array = array();
for($i=1; $i<$aantal; $i++)
{
$array[] = rand(1, $totaal);
}
}
while(array_sum($array) >= $totaal);
$array[] = $totaal - array_sum($array);
foreach($array as $value)
{
echo '$' .number_format($value). '<br/>';}
} //isset Post
} //no money
} //no days
} // 0 days
} // 1 player
} // $0?>
Dit is een simpel dice script waarbij iemand geld kan verdelen over een paar spelers.
Bijv. $100 over 3 spelers. Speler 1 krijgt $10 Speler 2 krijgt $56 en Speler 3 krijgt $34.
Nu staat er:
$10
$56
$34
Mijn vraag is hoe kan ik er bij zetten dat Speler 1 dit krijgt, Speler 2 dat enzovoort..? Het is heel simpel waarschijnlijk als ik mezelf een beetje in arrays verdiep.. maar daar heb ik eigelijk niet zoveel tijd voor. Ook omdat ik het maar voor 1 ding nodig hebt. Dus zou iemand mij kunnen helpen?? Ik zou het erg op prijs stellen.
Ik denk dat je de PHP Beginnershandleiding nog maar eens door moet nemen. Je comments wat iedere } is, klopt al niet en je while-voorwaarde klopt ookal niet. Dus als je daar nu mee begint en netjes inspringt, kunnen we misschien meer voor je doen.
Dit script werkt naar mijn mening gewoon. Natuurlijk heb je er meer verstand van.
Ik heb ook nog nooit een handleiding gelezen, heb ik te weinig geduld voor. Net als Photoshop die ik op dit moment perfect beheer zonder enige handleiding. Ik ben meer van het proberen, net zo lang proberen tot het werkt. Alleen werkt dat bij dit onderdeel niet zo. (haha)
Voor mij zijn de comments niet belangerijk. Meer waar elke voorstaat. Ik snap best dat de laatste } de afsluitende is voor isset maarja dat interreseert mij weinig, het werkt.
Normaal zijn de users hier op dit forum heel vriendelijk en helpen mij zo op weg. Jullie vinden dit leuk om te doen (neem ik aan).
Jullie beheersen de php taal zo goed dat bij zo'n klein en simpel script een toevoeging als deze geen enkele moeite kost lijkt mij. Ik zou iedereen willen helpen als ik het goed beheersde.
Maarja als je me liever door verwijst (iets wat ik al had gedacht..) dan accepteer ik dat en dan zal ik zodra ik er tijd voor heb is gaan kijken hoe de basis werkt... misschien dat ik dan over een half jaar is bij de arrays uitkom om zo mijn oh zo simpele script af te maken en andere mensen te helpen (die van dit script gebruik willen maken).
Bedankt Jezput voor je tijd om deze reactie te plaatsen.
Ik heb ook nog nooit een handleiding gelezen, heb ik te weinig geduld voor. Net als Photoshop die ik op dit moment perfect beheer zonder enige handleiding. Ik ben meer van het proberen, net zo lang proberen tot het werkt. Alleen werkt dat bij dit onderdeel niet zo. (haha)
Voor mij zijn de comments niet belangerijk. Meer waar elke voorstaat. Ik snap best dat de laatste } de afsluitende is voor isset maarja dat interreseert mij weinig, het werkt.
Normaal zijn de users hier op dit forum heel vriendelijk en helpen mij zo op weg. Jullie vinden dit leuk om te doen (neem ik aan).
Jullie beheersen de php taal zo goed dat bij zo'n klein en simpel script een toevoeging als deze geen enkele moeite kost lijkt mij. Ik zou iedereen willen helpen als ik het goed beheersde.
Maarja als je me liever door verwijst (iets wat ik al had gedacht..) dan accepteer ik dat en dan zal ik zodra ik er tijd voor heb is gaan kijken hoe de basis werkt... misschien dat ik dan over een half jaar is bij de arrays uitkom om zo mijn oh zo simpele script af te maken en andere mensen te helpen (die van dit script gebruik willen maken).
Bedankt Jezput voor je tijd om deze reactie te plaatsen.
'Jezpur:
... en je while-voorwaarde klopt ook al niet ....
En wat klopt daar dan niet aan. Volgens mij werkt dat perfect.
Edit: In $array staan nu de drie getallen. Dat is toch gewoon uitlezen en aan de juiste spelers toevoegen. Lijkt mij niet moeilijk.
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
Sorry voor late reactie. Ik waardeer dat je positief antwoord op mijn vraag geeft.
Toch ben ik echt een lake op gebied van $array, ik ben geholpen met die script en zou niet weten hoe ik het toevoeg. Ik snap de werking maar daar houdt het mee op. Het is echt alleen voor dit script zou je misschien kunnen uit leggen hoe ik het uitlees en de spelers toe voeg? En als je daar geen tijd voor hebt zou je me dan kunnen vertellen waar ik er uitleg over kan krijgen (handleiding over array ofzo?)
Alvast bedankt.
Toch ben ik echt een lake op gebied van $array, ik ben geholpen met die script en zou niet weten hoe ik het toevoeg. Ik snap de werking maar daar houdt het mee op. Het is echt alleen voor dit script zou je misschien kunnen uit leggen hoe ik het uitlees en de spelers toe voeg? En als je daar geen tijd voor hebt zou je me dan kunnen vertellen waar ik er uitleg over kan krijgen (handleiding over array ofzo?)
Alvast bedankt.
Waar wil je die getallen aan toevoegen?
Nu geeft hij als uitkomst bijvoorbeeld $50 (afhankelijk wel bedrag je ingeeft en hoe hij het verdeeld)
Eigelijk zou ik willen dat hij zegt:
Speler 1 ontvangt $50.
Speler 2 ontvangt $10.
Speler 3 ontvangt $20.
In iedergeval dat hij doortelt..
Eigelijk zou ik willen dat hij zegt:
Speler 1 ontvangt $50.
Speler 2 ontvangt $10.
Speler 3 ontvangt $20.
In iedergeval dat hij doortelt..
En hoe zijn die speler gegevens opgeslagen?
Het is een soort van calculator/dice
Dus er zijn 2 velden:
Spelers:
Geld:
Als je dan invult:
Spelers: 4
Geld: 500
Dan zou er eigelijk (die is random) moeten staan:
Speler 1 ontvangt: $120
Speler 2 ontvangt: $50
Speler 3 ontvangt: $250
Speler 4 ontvangt: $80
Dus er zijn 2 velden:
Spelers:
Geld:
Als je dan invult:
Spelers: 4
Geld: 500
Dan zou er eigelijk (die is random) moeten staan:
Speler 1 ontvangt: $120
Speler 2 ontvangt: $50
Speler 3 ontvangt: $250
Speler 4 ontvangt: $80
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
$totaal = 500;
$aantal = 4;
do
{
$array = array();
for($i=1; $i<$aantal; $i++)
{
$array[] = rand(1, $totaal);
}
}
while(array_sum($array) >= $totaal);
$array[] = $totaal - array_sum($array);
for($i=1; $i<=count($array); $i++)
{
echo 'Speler ' . $i . ' ontvangt $' . $array[$i-1] . '<br />';
}
?>
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
$totaal = 500;
$aantal = 4;
do
{
$array = array();
for($i=1; $i<$aantal; $i++)
{
$array[] = rand(1, $totaal);
}
}
while(array_sum($array) >= $totaal);
$array[] = $totaal - array_sum($array);
for($i=1; $i<=count($array); $i++)
{
echo 'Speler ' . $i . ' ontvangt $' . $array[$i-1] . '<br />';
}
?>
Bedankt voor je snelle reactie. Waardeer ik echt!
Ik ga het uitproberen :)
Edit: Het werkt, je hebt me weekend nog wat beter gemaakt. Bedankt!
Edit2: Bij getallen boven de 2,500,000,000 doet hij het niet meer dan komen er negatieve getallen. Is daar nog een oplossing voor?
Ik ga het uitproberen :)
Edit: Het werkt, je hebt me weekend nog wat beter gemaakt. Bedankt!
Edit2: Bij getallen boven de 2,500,000,000 doet hij het niet meer dan komen er negatieve getallen. Is daar nog een oplossing voor?
Gewijzigd op 01/01/1970 01:00:00 door Jeroen
Code (php)
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
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
<?php
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
$totaal = 2500000000;
echo $totaal . '<br />';
$aantal = 4;
do
{
$array = array();
for($i=1; $i<$aantal; $i++)
{
$array[] = abs(rand(1, $totaal));
}
}
while(abs(array_sum($array)) >= $totaal);
$array[] = $totaal - array_sum($array);
for($i=1; $i<=count($array); $i++)
{
echo 'Speler ' . $i . ' ontvangt $' . $array[$i-1] . '<br />';
}
echo array_sum($array);
?>
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
$totaal = 2500000000;
echo $totaal . '<br />';
$aantal = 4;
do
{
$array = array();
for($i=1; $i<$aantal; $i++)
{
$array[] = abs(rand(1, $totaal));
}
}
while(abs(array_sum($array)) >= $totaal);
$array[] = $totaal - array_sum($array);
for($i=1; $i<=count($array); $i++)
{
echo 'Speler ' . $i . ' ontvangt $' . $array[$i-1] . '<br />';
}
echo array_sum($array);
?>
Zo gaat hij niet meer in de min, maar zet hij bij de eerste getallen een $1 en het laatste getal het overige deel.
Weet je hoe dat komt?
Weet je hoe dat komt?
Bij mij werkt ie gewoon.
Output:
2500000000
Speler 1 ontvangt $151380587
Speler 2 ontvangt $462426529
Speler 3 ontvangt $611633189
Speler 4 ontvangt $1274559695
2500000000
Output:
2500000000
Speler 1 ontvangt $151380587
Speler 2 ontvangt $462426529
Speler 3 ontvangt $611633189
Speler 4 ontvangt $1274559695
2500000000




