De bouwstenen van het programmeren 1



Vergelijkbare documenten
POD1 - Hoofdstuk 1: Inleiding

PSD. Reeksen van logische procedures om problemen op te lossen in een eindig aantal stappen.

Sequentie. Methode voor het ontwerpen van een programmastructuur

1. Programmeerblokken

SEQUENTIE-STRUCTUUR. Oefening: Dichtheid

Uitleg: In de bovenstaande oefening zie je in het eerste blokje een LEES en een SCHRIJF opdracht. Dit is nog lesstof uit het tweede trimester.

PROS1E1 Gestructureerd programmeren in C Dd/Kf/Bd

1.1 Rekenen met letters [1]

II. ZELFGEDEFINIEERDE FUNCTIES

Programmeren. Inleiding

Datum. Vraag het bedrag in BEF. Reken om naar EURO. Toon het bedrag in EURO. --- Vraag het bedrag in BEF Reken om naar EURO---

6.1 Kwadraten [1] HERHALING: Volgorde bij berekeningen:

Een computerprogramma is opgebouwd uit een aantal instructies die op elkaar volgen en die normaal na elkaar uitgevoerd worden.

6.1 Kwadraten [1] HERHALING: Volgorde bij berekeningen:

OPDRACHT Opdracht 2.1 Beschrijf in eigen woorden wat het bovenstaande PSD doet.

Oefeningen in verband met tweedegraadsvergelijkingen

Oefeningen in verband met tweedegraadsvergelijkingen

Controle structuren. Keuze. Herhaling. Het if statement. even1.c : testen of getal even of oneven is. statement1 statement2

Basis Figuren. De basis figuren zijn een aantal wiskundige figuren die je al in de wiskunde lessen hebt gekregen.

Basisvaardigheden algebra. Willem van Ravenstein Den Haag

Samenvatting Wiskunde Aantal onderwerpen

1 Rekenen met gehele getallen

Informatica. 2 e graad 2 e jaar. De Mol W.

2 REKENEN MET BREUKEN Optellen van breuken Aftrekken van breuken Vermenigvuldigen van breuken Delen van breuken 13

Onderzoek of de rijen rekenkundig, meetkundig of geen van beide zijn. Geef bij de rekenkundige rijen v en t 7 en bij de meetkundige rijen q en t 7.

Extra oefeningen hoofdstuk 12: Omtrek - Oppervlakte - Inhoud

Willem van Ravenstein

Small Basic Console Uitwerking opdrachten

2.1 Bewerkingen [1] Video Geschiedenis van het rekenen ( 15 x 3 = 45

Small Basic Programmeren Text Console 2

Fractale dimensie. Eline Sommereyns 6wwIi nr.9

1 Vlaamse Wiskunde Olympiade : Tweede Ronde.

Uitwerkingen Rekenen met cijfers en letters

IJkingstoets burgerlijk ingenieur juni 2014: algemene feedback

3. Structuren in de taal

1 Junior Wiskunde Olympiade : tweede ronde

Vergelijkingen met één onbekende

Instructie voor Docenten. Hoofdstuk 13 OMTREK EN OPPERVLAKTE

3/3/2013 By Ing. R. Ellis 1

Getal en Ruimte wi 1 havo/vwo deel 1 hoofdstuk 4 Didactische analyse door Lennaert van den Brink ( )

Rekentijger - Groep 7 Tips bij werkboekje A

4.1 Negatieve getallen vermenigvuldigen [1]

1 Limiet van een rij Het begrip rij Bepaling van een rij Expliciet voorschrift Recursief voorschrift 3

1 Rekenen in eindige precisie

Bijlage 1 Rekenen met wortels

VAN HET PROGRAMMEREN. Inleiding

Bijlage 11 - Toetsenmateriaal

Deel 2. Basiskennis wiskunde

KENMERKENDE CIJFERS EN BENADERINGSREGELS

Rekenen met de GRM. 1 van 1. Inleiding: algemene zaken. donkerder. lichter

Leren Programmeren met Visual Basic 6.0 Les 3+4. Hoofdstuk 4 : De Selectie

Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 )

2 n 1. OPGAVEN 1 Hoeveel cijfers heeft het grootste bekende Mersenne-priemgetal? Met dit getal vult men 320 krantenpagina s.

Maak automatisch een geschikte configuratie van een softwaresysteem;

1 Vlaamse Wiskunde Olympiade : tweede ronde

6.1 Rechthoekige driehoeken [1]

rekentrainer jaargroep 7 Fietsen op Terschelling. Teken en vul in. Zwijsen naam: reken-wiskundemethode voor het basisonderwijs

rekentrainer jaargroep 7 Fietsen op Terschelling. Teken en vul in. Zwijsen naam: reken-wiskundemethode voor het basisonderwijs

4. Schematechnieken. In dit hoofdstuk worden drie schematechnieken behandeld:

A. B. C. D. Opgave 3. In een groot vierkant is een kleiner vierkant getekend. Wat is de oppervlakte van het kleine vierkant? A. B. C. D.

Getallenleer Inleiding op codeertheorie. Cursus voor de vrije ruimte

ZESDE KLAS MEETKUNDE

Simon de schildpad J van Weert 1

Inleiding. Algoritmiek

Estafette. 26 e Wiskundetoernooi

Informatica: C# WPO 7

Startgids 061 Nieuw product aanmaken en wijzigen

handleiding formules

Lereniseenmakkie Werkboek Zelf rijden en pech onderweg - 1

Wat is de som van de getallen binnen een cirkel? Geef alle mogelijke sommen!

Programmeeropgaven. Sem Prog DD

Wat betekenen de getallen? Samen bespreken. Kies uit kilometer, meter, decimeter of centimeter.

=

Oefening 1. Welke van de volgende functies is injectief? (E) f : N N N : (n, m) 7 2m+n. m n. Oefening 2

7 a patroonnummer a patroonnummer a h = z

Hoofdstuk 21: Gegevens samenvatten

Uitleg. Welkom bij de Beverwedstrijd Je krijgt 15 vragen, die je in maximaal 45 minuten moet beantwoorden.

Programmeren A. Genetisch Programma voor het Partitie Probleem. begeleiding:

WISKUNDE-ESTAFETTE RU Minuten voor 20 opgaven. Het totaal aantal te behalen punten is 500

Hoofdstuk 20. Talstelsels

Een boekje met wiskundige vragen en opdrachten voor Havo 3

GEBRUIKERS HANDLEIDING QT 6100 BACK TO BASICS HORECA

1 Junior Wiskunde Olympiade : eerste ronde

PG blok 4 werkboek bijeenkomst 4 en 5

Efficientie in de ruimte - leerlingmateriaal

1 Vlaamse Wiskunde Olympiade : Eerste Ronde.

2 BBL. Oppervlakte. 5.1 Eenheden van oppervlakte

Grafieken van veeltermfuncties

Inleiding tot programmeren: Javascript

Programmeren (1) Examen NAAM:

3.1 Negatieve getallen vermenigvuldigen [1]

Zestigdelige graden radialen honderddelige graden

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms

Deze stelling zegt dat je iedere rechthoekige driehoek kunt maken door drie vierkanten met de hoeken tegen elkaar aan te leggen.

PYTHON REEKS 1: BASICS. Mathias Polfliet

groep 8 blok 7 antwoorden Malmberg s-hertogenbosch

Informatica: C# WPO 9

Zomercursus Wiskunde. Katholieke Universiteit Leuven Groep Wetenschap & Technologie. September 2008

start -> id (k (f c s) (g s c)) -> k (f c s) (g s c) -> f c s -> s c

wizbrain 2015 Veel succes en vooral veel plezier.!! je hebt 75 minuten de tijd rekenmachine is niet toegestaan

Transcriptie:

De bouwstenen van het programmeren 1 I DE BOUWSTENEN VAN HET PROGRAMMEREN. Een programma is een beschrijving van acties (operaties, opdrachten) die moeten uitgevoerd worden. Deze acties spelen in op bepaalde gegevens. Om een programma te ontwerpen moet men eerst nauwkeurig weten wat de taken van het programma zijn. Formeel betekent dit dat men de verzameling van alle mogelijke invoergegevens moet definiëren, de verzameling van alle mogelijke uitvoergegevens en een functie die elk element van de eerste verzameling doet overeenstemmen met een element van de tweede verzameling. INVOER PROGRAMMA UITVOER De bedoeling van dit onderdeel is vertrouwd te worden met de elementaire structuurelementen van een gestructureerd programma. In het algemeen zijn er een drietal basisstructuren te onderscheiden : de sequentiestructuur de selectiestructuur de iteratiestructuur. Met deze 3 componenten kan men eender welk probleem, hoe ingewikkeld ook, oplossen. 1 De sequentiestructuur. 1.1 Definitie. De sequentiestructuur is de eenvoudigste structuur en komt binnen een programma frequent voor. De sequentiestructuur is een elementair programmadeel, dat bestaat uit een reeks van twee of meer opeenvolgende opdrachten. Ze zorgt ervoor dat de verschillende opdrachten volgens een vast bepaald schema aan bod komen, waardoor ze de één na de andere in uitvoering gaan in een volgorde overeenkomstig hun posities in het programma. De operaties geven aan wat er gedaan moet worden; de sequentiestructuur geeft aan in welke volgorde dit moet gebeuren. 1.2 Voorstellingen. Pseudo-code. opdracht_1 opdracht_2...

De bouwstenen van het programmeren 2 opdracht_n De verschillende opdrachten worden gewoon onder elkaar geschreven, terwijl ze op een 'van-boven-naar-beneden-' stapsgewijze manier onder ogen worden genomen. Na het beëindigen van opdracht_1 komt opdracht_2 aan de beurt. Dit principe volgt men verder, om zo geleidelijk opdracht_n te bereiken. Grafische voorstelling : A B C D Lees : A is een sequentie, bestaande uit element B, gevolgd door element C en gevolgd door element D. Opm : De volgorde van de elementen is van belang Voorbeeld: Berekenen van de omtrek van een cirkel. Pseudo-code: BEGIN EINDE Grafische voorstelling: VOERUIT(Scherm, Geef de straal van de cirkel: ) VOERIN (Klavier, straal) omtrek = 2 * p * straal VOERUIT(Scherm, De omtrek bedraagt :, omtrek) Omtrek van een cirkel Invoer Berekening Uitvoer 1 2 3 4 met 1) VOERUIT(Scherm, Geef de straal van de cirkel: ) 2) VOERIN (Klavier, straal) 3) omtrek = 2 * p * straal 4) VOERUIT(Scherm, De omtrek bedraagt :, omtrek)

De bouwstenen van het programmeren 3 2 De selectiestructuur. Tijdens het ontwerp van een programma wordt men vaak geconfronteerd met opdrachten die slechts in bepaalde omstandigheden doorgang mogen vinden. Dergelijke opdrachten noemt men voorwaardelijke opdrachten. Activiteiten die daarentegen altijd behandeld dienen te worden, heten onvoorwaardelijke activiteiten. De bouwsteen die instaat voor de implementatie van voorwaardelijke activiteiten, is de selectiestructuur. 2.1 Definitie. De basis van een selectiestructuur wordt gevormd door een predikaat waarin, in de vorm van een voorwaarde of conditie, een vraagstelling gehuisvest is. Deze vraag wordt gekenmerkt door haar tweeledig karakter, wat inhoudt dat er slechts twee mogelijke antwoorden zijn: een ja- of een nee-antwoord. Men spreekt in dit geval ook van binaire voorwaarden. Naargelang de voorwaarde positief of negatief geëvalueerd wordt, voert men een reeks verschillende activiteiten uit. M.a.w. een selectiestructuur is een elementair programmadeel dat bestaat uit een selectievoorwaarde gecombineerd met twee verschillende componenten waarvan er, afhankelijk van de toestand van de voorwaarde, slechts één wordt uitgevoerd. 2.2 Voorstelling. Pseudo-code. ALS (voorwaarde) DAN component_1 ANDERS component_2 EINDE_ALS_DAN Binnen het domein van de pseudo-code wordt de selectiestructuur weergegeven door een ALS_DAN_ANDERS-constructie. Bij een positief antwoord op de vraagstelling wordt automatisch de DAN-tak uitgevoerd, waarna de ANDERS-tak overgeslagen wordt om alzo de EINDE_ALS_DAN te bereiken. Omgekeerd wordt bij een negatief antwoord de DAN-tak automatisch weggelaten en de uitvoering van de ANDERS-tak gerealiseerd, om tenslotte bij de EINDE_ALS_DAN te belanden. Voorbeeld: Als de straal van de cirkel groter is dan 10 bereken je de omtrek; in het andere geval bereken je de oppervlakte. Pseudo-code: BEGIN VOERUIT(Scherm, Geef de straal van de cirkel: )

De bouwstenen van het programmeren 4 VOERIN (Klavier, straal) ALS(straal>10) DAN omtrek = 2 * p * straal VOERUIT(Scherm, De omtrek bedraagt :, omtrek) ANDERS opp = p * straal * straal VOERUIT(Scherm, De oppervlakte bedraagt :, opp) EINDE_ALS_DAN EINDE 2.3 De eenzijdige selectiestructuur. Een vereenvoudigde versie van de selectiestructuur is de eenzijdige selectiestructuur. Het is in feite geen elementaire bouwsteen, aangezien hij afleidbaar is van de gewone selectiestructuur. Het enige verschilpunt tussen beide is het ontbreken van de ANDERS-tak in de eenzijdige selectiestructuur. Deze structuur is enkel bruikbaar in toepassingen waar in bepaalde omstandigheden niets uitgevoerd moet worden. Pseudo-code: ALS (voorwaarde) DAN component_1 EINDE_ALS_DAN Voorbeeld: Enkel als de straal van de cirkel kleiner is dan 5 wil je de oppervlakte kennen. Pseudo-code: BEGIN EINDE VOERUIT(Scherm, Geef de straal van de cirkel: ) VOERIN (Klavier, straal) ALS(straal < 5) DAN opp = p * straal * straal VOERUIT(Scherm, De oppervlakte bedraagt :, opp) EINDE_ALS_DAN 2.4 De meervoudige selectiestructuur. De meervoudige selectiestructuur wordt meestal aangewend wanneer men geconfronteerd

De bouwstenen van het programmeren 5 wordt met een voorwaarde zonder binair karakter, d.w.z. dat de tweeledigheid van de vraag ontbreekt. Het gaat hier om een voorwaarde die in meer dan twee mogelijke toestanden kan verkeren. Men gebruikt in deze context vaak de term selectievariabele. Pseudo-code. ALS ( selectievariabele) EINDE_ALS = toestand-1 : component-1 = toestand-2 : component-2... :... = toestand-n : component-n Naargelang van de toestand van de selectievariabele selecteert men de corresponderende '='. De daarmee gepaard gaande component gaat in uitvoering. Bij het beëindigen van deze component verlaat men automatisch de structuur. Tijdens het doorlopen komt er altijd juist één component aan bod, wat inhoudt dat alle toestanden elkaar onderling uitsluiten en dat ze tevens een exhaustief geheel vormen (d.w.z. alle mogelijke toestanden moeten aanwezig zijn). 2.5 Grafische voorstelling. A C1 C2 C3 B C D Lees: A is een selectie van ofwel element B, ingeval van conditie C1, ofwel element C, ingeval van conditie C2, ofwel element D ingeval van conditie C3. Opm : De volgorde van de elementen op het onderste niveau is van geen belang 2.6 Voorbeeld. In een kledingzaak zijn er verschillende kleuren prijskaartjes in gebruik. Alleen bij de kleuren rood (= 50% korting), blauw (= 40% korting), groen (= 30% korting) en geel (= 20% korting) is er korting. Schrijf een programma dat aan de kassierster meedeelt hoeveel korting er op het kledingstuk is, na invoeren van de kleur van het prijskaartje. Pseudo-code: BEGIN VOERUIT(Scherm, Geef de kleur van het prijskaartje: )

De bouwstenen van het programmeren 6 EINDE VOERIN (Klavier, kleur) korting = 0.0 Grafische voorstelling: ALS(kleur) = rood : korting = 0.50 = blauw : korting = 0.40 = groen : korting = 0.30 = geel : korting = 0.20 EINDE_ALS VOERUIT(Scherm, De korting bedraagt :, korting) Berekening korting Invoer Bepaling korting Uitvoer 1 2 3 C1 C2 C3 C4 8 50 % korting 40 % korting 30 % korting 20 % korting 4 5 6 7 met C1 ) ALS (kleur = rood) C2 ) ALS (kleur = blauw) C3 ) ALS (kleur = groen) C4 ) ALS (kleur = geel) 1) VOERUIT(Scherm, Geef de kleur van het prijskaartje: ) 2) VOERIN (Klavier, kleur) 3) korting = 0.0 4) korting = 0.5 5) korting = 0.4 6) korting = 0.3 7) korting = 0.2 8) VOERUIT(Scherm, De korting bedraagt :, korting) 3 De iteratiestructuur. Het meermaals uitvoeren van bepaalde functies is een fenomeen dat in de computertoepassingen frequent voorkomt. De herhalingsstructuur biedt hiervoor een ideale oplossing. Het is een structuur die de mogelijkheid biedt een bepaalde reeks opdrachten automatisch te herhalen, automatisch meermaals uit te voeren. Naast een

De bouwstenen van het programmeren 7 elementaire iteratiestructuur is er ook een tweede herhalingsstructuur voorhanden, die echter afleidbaar is uit de vorige. 3.1 De ZOLANG_DOE-structuur. 3.1.1 Definitie. De iteratie is een elementair programmadeel, opgebouwd uit een iteratievoorwaarde en een iteratiecomponent. Zolang aan de iteratievoorwaarde voldaan is, wordt de aangegeven component altijd opnieuw uitgevoerd. 3.1.2 Voorstellingen. Pseudo-code. ZOLANG DOE (iteratievoorwaarde) iteratiecomponent EINDE_ZOLANG_DOE De organisatie die schuilgaat achter deze structuur, is als volgt te omschrijven: in een eerste fase wordt de iteratievoorwaarde getest. Indien een positief antwoord volgt, wordt de component uitgevoerd. Wanneer men het einde van de component bereikt, wordt er automatisch teruggekeerd naar de iteratievoorwaarde. Bij positief antwoord wordt de component nogmaals uitgevoerd, waarna de voorwaarde weerom onder de loep genomen wordt. Dit procédé stopt pas op het ogenblik dat de voorwaarde negatief uitvalt. Men verlaat de ZOLANG_DOE-structuur via de EINDE_ZOLANG_DOE en komt terug in de sequentiestructuur terecht. Merk op dat wanneer men de EINDE_ZOLANG_DOE bereikt, men met zekerheid kan stellen dat op dat ogenblik niet meer voldaan is aan de iteratievoorwaarde. 3.2 De DOE_TOTDAT-structuur. 3.2.1 Definitie. De DOE_TOTDAT-structuur bestaat eveneens uit een iteratiecomponent en een iteratievoorwaarde. Zolang aan de iteratievoorwaarde niet voldaan is, wordt de component steeds weer uitgevoerd. 3.2.2 Voorstellingen. Pseudo-code. DOE iteratiecomponent TOTDAT (iteratievoorwaarde) EINDE_DOE_TOTDAT

De bouwstenen van het programmeren 8 Na uitvoering van de iteratiecomponent gaat men de voorwaarde controleren. Bij negatief antwoord wordt de sequentie automatisch opnieuw uitgevoerd. Dit proces blijft zich herhalen totdat aan de voorwaarde voldaan is, waardoor de DOE_TOTDAT-structuur de rug wordt toegekeerd. 3.3 Vergelijking tussen ZOLANG_DOE- en DOE_TOTDAT-structuur. Bij de DOE_TOTDAT-structuur wordt de iteratiecomponent ten minste eenmaal uitgevoerd, aangezien ze gespecificeerd is vooraleer men de voorwaarde ontmoet. Bij de ZOLANG_DOE-structuur kan het voorkomen dat de iteratiecomponent niet in aanmerking komt, namelijk wanneer bij de eerste doortocht niet aan de voorwaarde voldaan is. ZOLANG_DOE-structuur 0, 1, 2, 3,..., n mogelijke uitvoeringen van de iteratiecomponent DOE_TOTDAT-structuur 1, 2, 3,..., n mogelijke uitvoeringen van de iteratiecomponent De DOE_TOTDAT-structuur wordt meestal niet als een basisstructuur beschouwd, aangezien hij afleidbaar is van de ZOLANG_DOE-structuur. Het enige waarvoor men moet zorgen is dat de iteratiecomponent ten minste eenmaal uitgevoerd wordt. Dit realiseert men door deze component niet alleen binnen de DOE te plaatsen, maar ook juist voor de ZOLANG_DOE-structuur, als onvoorwaardelijke component. DOE component TOTDAT (iteratievoorwaarde) EINDE_DOE_TOTDAT component ZOLANG NIET(iteratievoorwaarde) DOE component EINDE_ZOLANG_DOE 3.4 Grafische voorstelling. C A B ** Lees : A is een iteratie, indien voldaan is aan conditie C, bestaande uit de herhalende elementen B, waarvan er dus bij definitie 0, 1 of meerdere kunnen zijn, naargelang de omstandigheden.

De bouwstenen van het programmeren 9 3.5 Voorbeeld. Schrijf een programma dat op het scherm van 1 tot 10 telt. Pseudo-code: BEGIN EINDE i = 1 VOERUIT( Scherm, Tellen van 1 tot 10 :, NIEUWE LIJN) ZOLANG ( i <= 10 ) DOE VOERUIT( Scherm, i,, ) i = i + 1 EINDE_ZOLANG_DOE Grafische voorstelling: Tellen van 1 tot 10 Initialisatie Tellen Einde 1 2 C Afdrukken en optellen * 3 4 C ) ZOLANG ( i <= 10 ) 1 ) i = 1 2 ) VOERUIT( Scherm, Tellen van 1 tot 10 :, NIEUWE LIJN) 3 ) VOERUIT( Scherm, i,, ) 4 ) i = i + 1 4 Vaak voorkomende niet-elementaire programmastructuren. Computerprogramma's bestaan steeds uit een opeenvolging van elementaire programmastructuren. Nu blijkt echter dat bepaalde vaste combinaties van dergelijke programmastructuren frequent aan bod komen. Hier volgt een bondig overzicht. 4.1 De negatielogica. In sommige gevallen kunnen er zich problemen voordoen wanneer uit de opgave blijkt dat er in een selectiestructuur bijvoorbeeld in de DAN-tak niets ondernomen moet worden,

De bouwstenen van het programmeren 10 terwijl er in de ANDERS-tak wel activiteiten gespecificeerd staan. Hoe kunnen we nu in deze situatie de eenzijdige selectiestructuur toepassen? Het antwoord hierop wordt gegeven door de negatielogica. De operator die voorhanden is om de negatie weer te geven is de NIET-operator. Voorwaarde NIET-voorwaarde waar (1) vals (0) vals (0) waar (1) Indien we bijgevolg de negatie van de voorwaarde formuleren, komen de oorspronkelijke activiteiten van de ANDERS-tak in de DAN-tak, terwijl het niets doen in de DAN-tak verhuist naar de ANDERS-tak. 4.2 Samengestelde voorwaarden. Tot hiertoe hebben we binnen het predikaatknooppunt, zowel bij een selectie- als bij een iteratiestructuur, slechts één voorwaarde geformuleerd. In de praktijk echter kan het voorkomen dat een bepaalde opdracht slechts in aanmerking komt wanneer bvb. aan een reeks voorwaarden voldaan is. Zo'n reeks voorwaarden kan men verenigen in één samengestelde voorwaarde m.b.v. de logische operatoren EN en OF. Eigenschappen. voorw1 voorw2 voorw1 EN voorw2 voorw1 OF voorw2 NIET ( voorw1 EN voorw2 ) = NIET ( voorw1 ) OF NIET ( voorw2 ) NIET ( voorw1 OF voorw2 ) = NIET ( voorw1 ) EN NIET ( voorw2 ) 4.3 Geneste selectiestructuren. In sommige omstandigheden kan het voorkomen dat men na het beantwoorden van een tweeledige vraagstelling nog niet eenduidig weet wat te doen, m.a.w. dat men verplicht is een bijkomende vraag te formuleren. Gevolg hiervan is dat er in de DAN-tak of in de ANDERS-tak of in beide een nieuwe selectiestructuur wordt opgenomen. In dit geval

De bouwstenen van het programmeren 11 spreekt men van een geneste selectiestructuur. Pseudo-code. ALS ( selectievoorwaarde-1) DAN... ALS (selectievoorwaarde-2) DAN component-1 ANDERS component-2 EINDE_ALS_DAN... ANDERS... ALS (selectievoorwaarde-3) DAN component-3 ANDERS component-4 EINDE_ALS_DAN... EINDE_ALS_DAN Opmerkingen : Bij geneste selectiestructuren speelt de volgorde van de vraagstellingen een belangrijke rol. Wanneer de logica van het probleem het toelaat, zal men tot samengestelde voorwaarden overgaan. 4.4 Geneste iteratiestructuren. Net zoals bij geneste selectiestructuren, waar een selectiestructuur aanwezig is in de DAN- en/of ANDERS-tak van een andere selectiestructuur, duidt de term geneste iteratiestructuur op de aanwezigheid van een herhalingsstructuur in de DOE-component.

De bouwstenen van het programmeren 12 5 Toepassingen. Schrijf volgende programma's in pseudo-code: Opgave 1: Opgave 2: Opgave 3: Opgave 4: Opgave 5: Opgave 6: Opgave 7: Opgave 8: Opgave 9: Opgave 10: Opgave 11: Schrijf een programma dat de omtrek van een rechthoek berekent waarbij de lengte en de breedte worden opgevraagd en ingegeven. Schrijf een programma dat de oppervlakte van een driehoek berekent waarbij de lengte en de breedte worden opgevraagd en ingegeven. Schrijf een programma dat de oppervlakte van een trapezium berekent waarbij de hoogte, de kleine en de grote basis worden opgevraagd en ingegeven. Schrijf een programma dat twee getallen inleest en respectievelijk de som, het verschil, de vermenigvuldiging en de deling van deze twee getallen afdrukt op het scherm. Schrijf een programma waarbij een positief geheel getal moet worden ingegeven, kleiner dan 10000. De computer drukt het dubbel af. Verzorg de teksten die op het scherm komen. Schrijf een programma waarbij een willekeurig positief geheel getal ingegeven moet worden (<1000). De computer drukt de drie daaropvolgende gehele getallen af op het scherm. Vraag de invoer van 2 gehele getallen. Als de eerste groter is dan de tweede bereken dan het verschil, anders de som. Een aantal getallen moet ingelezen worden. Het aantal wordt ingegeven als eerste invoer. Laat de computer de som afdrukken van alle ingevoerde positieve getallen en ook de som van alle strikt negatieve getallen. Schrijf een programma dat de vierkantswortel berekent van een positief getal. Schrijf een programma in pseudo-code dat afdrukt op het scherm of het ingevoerde getal positief en strikt groter dan 100 is, of het getal positief en kleiner of gelijk aan 100 is, of het getal negatief is, of het getal gelijk aan nul is. Schrijf een programma dat aan een koppel vraagt hoelang ze getrouwd zijn. Bepaal met behulp van de tabel welk jubileum ze vieren en wens ze proficiat met hun jubileum. Ingeval er niets te vieren is vermeld dit ook.

De bouwstenen van het programmeren 13 Aantal jaren Jubileum 20 Porseleinen 25 Zilveren 50 Gouden Opgave 12: Opgave 13: Opgave 14: Opgave 15: Opgave 16: Opgave 17: Opgave 18: Opgave 19: Opgave 20: Opgave 21: Schrijf een programma dat op het scherm 10 keer terugtelt met een stap van 2 vanaf een ingegeven getal. Schrijf een programma dat de eerste 20 getallen afdrukt van de rij van Fibonacci. Schrijf een programma om 10 gehele getallen in te lezen en het gemiddelde af te drukken. Schrijf een programma dat de reële getallen die door de gebruiker worden ingetypt, optelt zolang niet het getal -1 (= eindcode) wordt ingevoerd. De som wordt op het scherm getoond. Schrijf een programma dat een vierkantsvergelijking oplost. De soort vergelijking en de mogelijke oplossingen moeten op het scherm worden afgedrukt. Schrijf een programma dat het kleinste aantal bankbiljetten en munten berekent dat nodig is om een bepaald ingevoerd bedrag uit te betalen. Schrijf een programma dat het grootste strikt positief getal en het kleinst strikt negatief getal bepaalt uit een rij gehele getallen die de gebruiker ingeeft. Deze rij getallen wordt beëindigd met 0 (= eindcode). Schrijf een programma dat twee getallen inleest in numerieke variabelen, deze waarden binnen de variabelen verwisselt en vervolgens de nieuwe waarden van de variabelen op het scherm afdrukt. Schrijf een programma waarbij de gebruiker maximaal 5 moet raden welk karakter de computer in zijn "gedachten" heeft. Bij elke beurt moet de gebruiker een karakter intypen. Afhankelijk van dit karakter antwoordt de computer uw karakter is te hoog, uw karakter is te laag of gefeliciteerd u hebt mijn karakter geraden in beurten.

De bouwstenen van het programmeren 14 Een jongentje tekent op straat met krijt een vierkant met zijden van 150 cm. Binnen dit vierkant tekent hij een nieuw vierkant, waarvan de oppervlakte juist de helft is van het vorige. Zo gaat hij verder met vierkanten tekenen. Hij stopt ermee als het volgend te tekenen vierkant een zijde moet hebben die kleiner is dan 10 cm. Schrijf een programma om na te gaan hoeveel vierkanten de jongen getekend heeft.