Test
Herhaling van de lessen tot nu toe.
Voorbeeld
In de opgaven hieronder moet je op de plaats van de <XXX1>, <XXX2>,.... de code zelf aanvullen. Bijvoorbeeld:
Gegeven:
for($i=0; $< <XXX1> ; <XXX2>) {
Gevraagd wordt nu op de plaats van <XXX1> en <XXX2> de code aan te vullen zodat je loop hebt die 10x itereert; wordt uitgevoerd.
Er zijn meerdere antwoorden mogelijk maar de eenvoudigste is
<XXX1>= 10 en <XXX2>= $i++
Opgaven
Opgave 1
<?php
for($i=3; <XX1>; $i++){
Wat moet er op de plaats van<XX1> staan om de loop precies 3 keer te laten uitvoeren?
Opgave 2
<?php
$i=<XX1>;
while($i>0) {
$i--;
Wat moet er om de plaats van <XXX1> staan om deze loop precies 10 keer te laten uitvoeren?
Opgave 3
<?php
$aantal=10;
do {
print "Aantal is nog ".$aantal.""<br>";
if ($aantal == 2) {
$aantal = 0;
}
$aantal--;
} while ($aantal > <XXX1> );
Je wilt dat de getallen 10 tot en met 2 worden afgedrukt. Wat moet je op de plaats van <XXX1> invullen?
Opgave 4
<?
$a=1;
$j=0;
while($a) {
<XXX1>
for($i=0;$i<10;$i++){
echo "Hi!"."<br>";
}
if ($j==5) {
$a=<XXX2>;
}
}
Je wilt dat er 50x ""Hi!" wordt afgedrukt. Wat komt er dan te staan voor <XXX1> en <XXX2> ?
Opgave 5
<?
for($i=0; $i<10; $i++){
for($i=0; $i<10; $i++){
echo "Hello"."<br>";
}
}
Deze code zou 10 x 10 X Hello moeten afdrukken, maar het werkt niet. Waarom werkt de code niet, wat is er fout?
Let op dat dit een veel gemaakte fout is bij een loop in een loop.
Opgave 6
<?php
for($i=0; $i<10; $i++){
if ($i == 5) {
<XXX1>
}
echo $i."<br>";
}
Deze loop drukt de getallen 0, 1, 2, .... etc onder elkaar af. Wat moet er op de plaats van de <XXX1> komen om ervoor te zorgen dat het getal 5 niet wordt afgedrukt?
Opgave 7
<?php
$persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female");
echo "Mary is a " . <XXX1>;
?>
Wat moet er komen in plaats van <xxx1> zodat het geslacht ('Female') van mary wordt afgdrukt?
Opgave 8
$myAraay = array ( "color" => array ( "a" => "Red", "b" => "Green", "c" => "White"));
Gebruik het array $myArray en druk Red, Green en White af.
Opgave 9
<?php
$movies =array(
"comedy" => array("Pink Panther", "John English", "See no evil hear no evil"),
"action" => array("Die Hard", "Expendables"),
"epic" => array("The Lord of the rings"),
"Romance" => array("Romeo and Juliet")
);
Dit is het resultaat van een query. Je ziet nu de uitkomst maar er kunnen ook meer of minder films zijn. Er kunnen bijvoorbeeld ook 12 comedy's zijn, of 5 maar ook 0. Maak en test nu code zodat je alle comedy films afdrukt. Houd daarbij rekening met het feit dat je dus niet weet hoeveel comedy films er zijn.
Dus zoek eerst in het array $movies naar de comedy en druk dan het array af waarin de titels staan. In dit geval zijn het er drie, maar dat weet je niet van te voren.
Opgave 10
<?php
<?
$ceu = array("Countries"=>array( "Italy"=>"Rome", "Luxembourg"=>"Luxembourg", "Belgium"=> "Brussels", "Denmark"=>"Copenhagen", "Finland"=>"Helsinki", "France" => "Paris", "Slovakia"=>"Bratislava", "Slovenia"=>"Ljubljana", "Germany" => "Berlin", "Greece" => "Athens", "Ireland"=>"Dublin", "Netherlands"=>"Amsterdam", "Portugal"=>"Lisbon", "Spain"=>"Madrid", "Sweden"=>"Stockholm", "United Kingdom"=>"London", "Cyprus"=>"Nicosia", "Lithuania"=>"Vilnius", "Czech Republic"=>"Prague", "Estonia"=>"Tallin", "Hungary"=>"Budapest", "Latvia"=>"Riga", "Malta"=>"Valetta", "Austria" => "Vienna", "Poland"=>"Warsaw")) ;
- Druk uit dit array de de hoofdstad van Duitsland (Germany) af.
- Maak code die alle landen uit het $ceu array afdrukt.
- Maak code dit alle landen uit het $ceu array gesorteerd afdrukt.
- Maak code die alle hoofdsteden uit het $ceu array gesorteerd afdrukt.
Opgave 11
Maak gebruik van loops om onderstaand patroon in je web browser af te drukken. Op de eerste regel staat 1 sterretje, op de tweede 2,op de derde 3, .... en op de 10de regels staan 10 sterretjes.
*
**
***
****
*****
******
*******
********
*********
**********
Tip: maak eerst een 'gewone' loop van 10 (for($i=0.....) en druk $i af. Wat zie je? Welke getallen zie je en hoe verhouden die zich tot het aantal sterretjes dat je moet afdrukken?