Kijk welk cijfer het meeste voorkomt.
4 1 2 4 3 4 1 4
4 komt dus het meeste voor... hoe kan ik dat checken met php?
dus eigenlijk het aantal gelijke cijfers tellen.
Gewijzigd op 13/11/2010 14:49:21 door Jasper DS
php: count array values
Array ( [1] => 1 [2] => 3 [4] => 4 [3] => 1 )
4 heeft het meeste
Gewijzigd op 13/11/2010 14:58:42 door Jasper DS
max kan je voeren aan de search wat dan weer de key oplevert
Gewijzigd op 13/11/2010 15:12:05 door Noppes Homeland
het cijfer dat het meeste voorkomt staat inderdaad eerst. Maar hoe kan ik dat nu weergeven?
Gewijzigd op 13/11/2010 15:19:01 door Noppes Homeland
Bekijk nu eens op php.net:
http://nl.php.net/array_count_values
http://nl.php.net/max
http://nl.php.net/manual/en/function.array-search.php
en bedenk dan hoe je die tesamen kunt gebruiken om het gewenste antwoord te krijgen
Ik heb je linken doorzocht. maar ik vind de oplossing maar niet.. xs
Ik snap de combinatie niet.
Gewijzigd op 13/11/2010 15:57:57 door Jasper DS
Wat is de eerste stap, wat is de 2de stap en wat is de derde stap. - hoewel dit alles al voorgekauwd is -
Let wel er zijn uiteraard ook andere oplossingen mogelijk.........
Gewijzigd op 13/11/2010 16:05:42 door Noppes Homeland
Stap 1: zet getallen in array
stap 2: array_count_values($array)
Satp 3: haal getal dat het meeste voorkomt uit de array (=> waar het getal achter de pijl het hooste is.
stap 1: ok
stap 2: ok
stap 3: ok met een vraagteken
stap 4: jou nog onbekend
bestudeer de gegeven functies, ik heb ze hopelijk niet voor de kat z'n kut gepost
Noppes, ik zit me nu al een tijd suf te lezen op je linken... Ik kan het niet vinden!
Je zegt dat ik moet combineren maar ik snap niet wat.
Gewijzigd op 13/11/2010 16:27:27 door Jasper DS
je kan de gegeven functies nesten
uiteraard mag je ook al je freubeltje erbij posten, dan kunnen we code technisch ook het voortschreidend inzicht volgen
Gewijzigd op 13/11/2010 16:30:38 door Noppes Homeland
@Jasper, Heb je toevallig problemen met de engelse taal? Als je elke link hebt bekeken moet het toch direct duidelijk zijn geweest. Dit zou nog niet eens iets met logica te maken mogen hebben.
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
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
<?php
$array = array( $_POST['button1'],
$_POST['button2'],
$_POST['button3'],
$_POST['button4'],
$_POST['button5'],
$_POST['button6'],
$_POST['button7'],
$_POST['button8']);
$tel_array = array_count_values($array);
print_r($tel_array);
$afdeeling = $tel_array['1'];
if($tel_array['1'] == $_POST['button9'])
{
echo 'but9';
$afdeeling = $tel_array['2'];
}
echo $tel_array['1'].'en'.$tel_array['2'];
if($tel_array['1'] == $tel_array['2'])
{
echo '2 is nog';
$afdeeling = $_POST['button8'];
}
echo $afdeeling;
?>
$array = array( $_POST['button1'],
$_POST['button2'],
$_POST['button3'],
$_POST['button4'],
$_POST['button5'],
$_POST['button6'],
$_POST['button7'],
$_POST['button8']);
$tel_array = array_count_values($array);
print_r($tel_array);
$afdeeling = $tel_array['1'];
if($tel_array['1'] == $_POST['button9'])
{
echo 'but9';
$afdeeling = $tel_array['2'];
}
echo $tel_array['1'].'en'.$tel_array['2'];
if($tel_array['1'] == $tel_array['2'])
{
echo '2 is nog';
$afdeeling = $_POST['button8'];
}
echo $afdeeling;
?>
Gewijzigd op 13/11/2010 16:32:44 door Jasper DS
en wat na de array count gebeurt is een vraagteken
Gewijzigd op 13/11/2010 16:36:21 door Noppes Homeland
Toevoeging op 13/11/2010 16:38:58:
ik zal proberen met dit
->
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Toevoeging op 13/11/2010 16:44:52:
Het enige wat ik kan weergeven is dit:
Array ( [2] => 1 [4] => 3 [3] => 3 [1] => 1 )
Gewijzigd op 13/11/2010 16:37:36 door Jasper DS
En probeer eens commentaar in je script te zetten. Dat is gemakkelijker voor ons en voor jezelf als je er later op terug kijkt. Je hebt dan ook direct je gedachtengang in je script staan. Het is dan meestal veel gemakkelijker om fouten eruit te halen.
dus per groepje word er een cijfer aangeduid. Nu wil ik weergeven welk cijfer het meeste is aangeduid.
dus
vraag1
antwoord1
antwoord1
antwoort1
vraag2
antwoord 2
antwoord 2
antwoord 2
en zo nog enkele vragen.
Als er dan op submit gedrukt word wil ik weten welk antwoord het meeste is aangeklikt.
(zoals in een soort vragenlijst, dat je zo achteraan kan gaan kijken wat je bent)
Gewijzigd op 13/11/2010 16:52:45 door Jasper DS
"haal getal dat het meeste voorkomt uit de array"
daarop reageerde ik met ok, met een vraagteken
var_dump($tel_array)
Array ([4] => 4
[2] => 3
[1] => 1
[3] => 1 )
je bent op zoek naar: [4] => 4 en je wilt in feite de key waarde hebben
Hoe zal je dat nu kunnen doen met de overige overgebleven functies:
- max
- array_search