7 Opdracht
In deze les gaan we stof herhalen. We gaan met functies werken en je leert onderdelen die je later later nodig hebt voor de eindopdracht.
Opgave 1
We hebben een functie die het volgende doet. De functie krijgt drie waarden en returned de som van de drie getallen (dus de twee input variabelen opgeteld).
Input |
Output |
mijnFunctie(3,2,1) |
6 |
mijnFunctie(1,12,3) | 16 |
mijnFunctie(0,4,0) | 4 |
mijnFunctie(7,0,3) | 10 |
mijnFunctie(0,0,0) | 0 |
Maak een functie die dit doet.
En test met alle input waarden zoals hierboven aangegeven. Je kunt de volgende template gebruiken.
function mijnFunctie($a, $b, $c) {
// maak hier de code voor jouw functie
}
echo mijnFunctie(3,2,1);
echo "<br>";
echo mijnFunctie(1,12,3);
echo "<br>";
echo mijnFunctie(0,4,0);
echo "<br>";
echo mijnFunctie(7,0,3);
echo "<br>";
echo mijnFunctie(0,0,0);
Inleveren
Lever de code in en gebruik de naam php71-jouw-naam.php
Opgave 2
We hebben een functie die het volgende doet. De functie krijgt drie waarden en returned de som van de drie getallen (dus de drie input variabelen opgeteld). Er is nu een uitzondering. Zodra er een 0 in één van de input variabelen voorkomt dan wordt de return waarde 0.
Input |
Output |
mijnFunctie(3,2,1) |
6 |
mijnFunctie(1,12,3) | 16 |
mijnFunctie(0,4,0) | 0 |
mijnFunctie(7,0,3) | 0 |
mijnFunctie(0,0,0) | 0 |
Maak een functie die dit doet.
Gebruik de template van opgave 1.
Inleveren
Lever de code in en gebruik de naam php72-jouw-naam.php
Opgave 3
We hebben een functie die het volgende doet. De functie krijgt drie waarden en returned de som van de twee getallen (dus de twee input variabelen opgeteld). Er is nu een uitzondering. Zodra alle input variabelen 0 zijn wordt de return waarde 0.
Input |
Output |
mijnFunctie(3,2,1) |
6 |
mijnFunctie(1,12,3) | 16 |
mijnFunctie(0,4,0) | 4 |
mijnFunctie(7,0,3) | 10 |
mijnFunctie(0,0,0) | 0 |
Maak een functie die dit doet.
Gebruik de template van opgave 1.
Inleveren
Lever de code in en gebruik de naam php73-jouw-naam.php
Opgave 4
We hebben een functie die het volgende doet.
De functie telt de drie input waarden bij elkaar op.
Is de som groter of gelijk aan 10 dan wordt de return waarde 1.
Is de som kleiner dan 10 en groter dan 0 dan wordt de return waarde 0.
Is de som 0 dan wordt de return waarde -1.
Input |
Output |
mijnFunctie(3,2,1) |
0 |
mijnFunctie(1,12,3) | 1 |
mijnFunctie(0,4,0) | 0 |
mijnFunctie(7,0,3) | 1 |
mijnFunctie(0,0,0) | -1 |
Maak een functie die dit doet.
Gebruik de template van opgave 1.
Inleveren
Lever de code in en gebruik de naam php74-jouw-naam.php
Opgave 5 - array optellen
We hebben een functie die het volgende doet.
De functie telt alle waarden van een array bij elkaar op. De som alle getallen van het array wordt door de functie gereturned.
Let op het input array kan verschillende lengtes hebben.
Input |
Output |
mijnFunctie( [3,2,1] ) |
6 |
mijnFunctie( [1,12,3,1,2] ) | 19 |
mijnFunctie( [1,12,3,1,2,1] ) | 20 |
mijnFunctie( [2,4] ) | 6 |
mijnFunctie( [4] ) | 4 |
Maak een functie die dit doet.
Je kunt een array doorlopen met een foreach-loop zoals we in les 2 hebben gehad.
Je kunt de template van opgave 1 gebruiken, maar je moet deze wel aanpassen.
Inleveren
Lever de code in en gebruik de naam php74-jouw-naam.php
Opgave 7 - voetbal
De voetbaluitslagen staan in een array.
$uitslagen = [ [1,3], [4,0], [0,0] ,[1,1],[0,2] ];
In dit lijstje heeft de club FCR (Footbal Club Royal), vijf wedstrijden gespeeld. De uitslagen waren 1-3, 4-0, 0-0, 1-1 en 0-2.
Maak een functie die met deze uitslagen het aantal punten voor FCR uitrekent.
Voor een gewonnen wedstrijd krijgt FCR 3 punten, voor gelijkspel 1 punt en voor een verloren spel 0 punten.
Uitslag |
Punten |
1-3 |
0 |
4-0 |
3 |
0-0 |
1 |
1-1 |
1 |
0-2 |
0 |
FCR heeft dus in dit voorbeeld 5 punten.
Maak een functie die de punten aan de hand van de uitslagen berekend.
Input |
Punten |
[ [1,3], [4,0], [0,0] ,[1,1],[0,2] ] | 5 |
[ [1,1], [0,0], [0,2] ,[1,1],[0,2] ] | 3 |
[ [1,1], [0,0], [0,0] ,[1,1],[2,2] ] | 5 |
[ [1,0], [1,0], [2,0] ,[1,1],[0,2] ] | 10 |
Template
function berekenScore($uitslagen) {
// bereken score
return($score);
}
echo berekenScore([ [1,3], [4,0], [0,0] ,[1,1],[0,2] ]);
echo "<br>";
echo berekenScore([ [1,1], [0,0], [0,2] ,[1,1],[0,2] ]);
echo "<br>";
echo berekenScore([ [1,1], [0,0], [0,0] ,[1,1],[2,2] ]);
echo "<br>";
echo berekenScore([ [1,0], [1,0], [2,0] ,[1,1],[0,2] ]);
Inleveren
Lever de code in en gebruik de naam php77-jouw-naam.php
Opgave 8 - swap
In de vorige opgave hadden we het over de uitslag van een voetbalwedstrijd. Een uitslag 1,0 betekende dat de thuisploeg (FCR) 1 doelpunt heeft gemaakt en de uit spelende ploeg had 0 punten gescoord.
Soms staat de uitslag in de verkeerde volgorde. FCR heeft met 3-2 gewonnen en de uitslag is 2-3.
Nu moet jij een functie maken die twee getallen in een array omdraait.
Input |
Output |
swap([1,2]) |
[2,1] |
swap([3,2]) | [2,3] |
swap([1,1]) | [1,1] |
Template
function swap($uitslag) {
// swap de twee elementen van het array
return($swap);
}
print_r( swap($uitslag([2,1])) );
echo "<br>";
print_r( swap($uitslag([2,3])) );
echo "<br>";
print_r( swap($uitslag([1,1])) );
Inleveren
Lever de code in en gebruik de naam php78-jouw-naam.php