Om het even
Introductie
Met de if opdracht kan je een keuze maken tussen 2 situaties. Het 'waar' ( true ) deel staat onder de if. Het 'onwaar' ( false ) deel staat onder else. Als je meer dan 1 regel nodig hebt onder de if of de else moet je hier accolades gebruiken. Dat zullen we nu nog niet doen.
Een if heeft altijd de vorm "if (x) doe_iets". De haakjes zijn hier verplicht! Zie de if maar als een opdracht net als de console.log .
Voorbeeld
Let op dat we niet schreven hoek=90
, maar hoek==90
. Dit heeft te maken met een eigenaardigheid van C achtige talen (wat JavaScript ook is). In C is het mogelijk op elk moment een waarde te veranderen, ook midden in een if . Dat betekent dat ik kan schrijven if (hoek=90)
en dat dit vervolgens uitvoert hoek=90
, ofwel de waarde wordt op 90 gezet voordat de if is uitgevoerd. Natuurlijk is het antwoord dan waar! Dit willen we niet en daarom heeft men slim de '==' bedacht. Deze controleert de waarde maar kan de waarde niet veranderen. In JavaScript bestaat zelfs de '===' die ook controleert of de waarde het juiste type heeft (getal of tekst bijvoorbeeld). Veel programmeurs gebruiken hierdoor alleen nog maar '==='.
Dat wat achter if staat moet altijd waar of onwaar zijn, het kan dus nooit een 'ongeveer' waarde zijn. Voorbeelden zijn
- gelijkheid:
x==10
, - kleiner:
x<10
, - groter:
x>10
, - ongelijkheid:
x!=10
(lees het uitroepteken als niet )
Een if wordt vaak afgebeeld met een stroomdiagram ( flowchart) .
In games
If, of eigenlijk selectie is zo belangrijk bij het programmeren, dat het onmogelijk is zinvolle programma's te schrijven zonder if . Wat zou je aan een auto hebben die alleen maar rechtsaf kan slaan?
Neem bijvoorbeeld de instellingen in een spel: Een wapen selecteren vereist een if . Nog belangrijker, Pac-Man op het scherm laten bewegen kan alleen met een combinatie van if : de keuze tussen boven, links, rechts en onder.
Opdracht
- Maak een variabele, en zet er een getal in
- Controleer met if en % of het getal oneven is
- Bij een oneven getal print je 'oneven', bij andere getallen 'even'
Pas op met
- De volgorde van regels code
- Het correct gebruik van % (bijv. aantal % 10 == 0)
- Het verschil tussen '=' en '=='
Verwacht resultaat
Als de input is a=1
oneven
Als de input is a=2
even
Test je programma met diverse getallen
Veelgemaakte fouten
- verkeerd gebruik van %
- typefouten (syntax errors)
- verwisselen van de Waar en Onwaar delen
- gebruik van '=' in plaats van '=='
Bronnen
- https://en.wikipedia.org/wiki/Modulo_operation
- https://en.wikipedia.org/wiki/Conditional_(computer_programming)
- http://www.flowgorithm.org/index.htm
- https://en.wikipedia.org/wiki/Flowchart
- https://en.wikibooks.org/wiki/JavaScript/Control_structures#if
Status | Discussie | Begonnen door | Laatste bericht | Antwoorden | Acties |
---|---|---|---|---|---|
antwoord
Vergrendeld
|
|
|
0 |
|