Skip to main content

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