Skip to content

Track 6 - Oefenopdracht - Tentamencijfers: Vervolg

Codelab

npx @hboictcloud/codelab-cli new programming/6-tentamencijfers-vervolg

Beschrijving

Deze opdracht is een vervolg op de Tentamencijfers-oefenopdracht uit Track 5. De eerder geschreven code kun je namelijk veel eenvoudiger te begrijpen maken door gebruik te maken van een vijftal functies.

Maak een kopie van de code van deze oefenopdracht en maak de volgende aanpassingen:

  1. Schrijf en gebruik een functie om het aantal in te voeren cijfers in te lezen.
  2. Schrijf en gebruik een functie om het de in te voeren cijfers in te lezen.
  3. Schrijf en gebruik een functie om het gemiddelde te berekenen.
  4. Schrijf en gebruik een functie om het aantal voldoendes te bepalen.
  5. Schrijf en gebruik een functie om het hoogste cijfer te bepalen.

Hieronder een voorbeeld van input/output van deze applicatie. Input die de gebruiker invoert is onderstreept.

Hoeveel cijfers wilt u invoeren? 0
    Aantal cijfers moet groter zijn dan 0!
Hoeveel cijfers wilt u invoeren? 12

Cijfer student 1: 5.8
Cijfer student 2: 9.1
Cijfer student 3: 3.5
Cijfer student 4: 6
Cijfer student 5: -5.1
    Het cijfer moet tussen de 1 en 10 liggen!
Cijfer student 5: 5.1
Cijfer student 6: 8
Cijfer student 7: 7.2
Cijfer student 8: 4.9
Cijfer student 9: 10.3
    Het cijfer moet tussen de 1 en 10 liggen!
Cijfer student 9: 9.3
Cijfer student 10: 7.7
Cijfer student 11: 5
Cijfer student 12: 6.2

Aantal cijfers: 12
Gemiddelde cijfer: 6.5
Aantal voldoendes: 8
Hoogste cijfer: 9.3

Stappenplan

  1. Om de bestaande code leesbaar te houden, is het verstandig om deze eerst in een main-functie te plaatsen. Doe dit als volgt:

    await main();
    
    async function main(): Promise<void> {
        // TODO: Plaats hier je bestaande code.
    }
    
  2. Schrijf een functie die het aantal in te voeren cijfers teruggeeft. Hergebruik waar mogelijk de eerder geschreven. Geef de functie de volgende signature:

    async function vraagAantalCijfers(): Promise<number>
    
  3. Schrijf een functie die het in te voeren cijfer voor een studenten teruggeeft. Hergebruik waar mogelijk de eerder geschreven. Geef de functie de volgende signature:

    async function vraagCijferStudent(index: number): Promise<number>
    
  4. Schrijf een functie die het gemiddelde van een array van kommagetallen teruggeeft. Hergebruik waar mogelijk de eerder geschreven. Geef de functie de volgende signature:

    function berekenGemiddelde(getallen: number[]): number
    
  5. Schrijf een functie die het aantal getallen groter of gelijk aan 5.5 in een array van kommagetallen teruggeeft. Hergebruik waar mogelijk de eerder geschreven. Geef de functie de volgende signature:

    function bepaalAantalVoldoendes(getallen: number[]): number
    
    6. Schrijf een functie die het hoogste getal van een array van kommagetallen teruggeeft. Hergebruik waar mogelijk de eerder geschreven. Geef de functie de volgende signature:
    function bepaalHoogsteCijfer(getallen: number[]): number
    
  6. Pas de origineel geschreven code vervolgens zo aan dat bij het genereren van de gevraagde output gebruik gemaakt wordt van bovenstaande functies.

Richtlijnen bij coderen

  • Zorg dat je naam en het doel van het programma bovenin staan.
  • Gebruik de juiste inspringing (indentation) bij de lay-out.
  • Let op juist gebruik hoofdletters en kleine letters.
  • Gebruik goede namen.
  • Voeg waar nodig commentaar toe dat inzicht geeft in je code.