IDENTIFICATION DIVISION. PROGRAM-ID. RekenOefeningen. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-OPERAND1 PIC 99 VALUE 0. 01 WS-OPERAND2 PIC 99 VALUE 0. 01 WS-ANTWOORD-CORRECT PIC 999V9 VALUE 0. 01 WS-ANTWOORD-GEBRUIKER PIC 999V9 VALUE 0. 01 WS-ACTIE PIC XX VALUE SPACES. 01 WS-ROOT-GETAL PIC 999 VALUE 0. 01 WS-ROOT-UITKOMST PIC 99V9 VALUE 0. 01 WS-KWADRAT PIC 99 VALUE 0. 01 WS-TELLER PIC 9 VALUE 1. PROCEDURE DIVISION. DISPLAY "Test uw rekenvermogen met deze 5 sommen." PERFORM UNTIL WS-TELLER > 5 *> Vraag een geldige actie PERFORM UNTIL WS-ACTIE = "1" OR WS-ACTIE = "2" OR WS-ACTIE = "3" OR WS-ACTIE = "4" DISPLAY SPACE DISPLAY "Dit is som " WS-TELLER "." DISPLAY "Kies een type som en klik enter: " DISPLAY "1 - Optellen" DISPLAY "2 - Aftrekken" DISPLAY "3 - Vermenigvuldigen" DISPLAY "4 - Worteltrekken" ACCEPT WS-ACTIE EVALUATE WS-ACTIE WHEN "1" WHEN "2" WHEN "3" WHEN "4" CONTINUE WHEN OTHER DISPLAY "Ongeldige keuze. Probeer opnieuw." END-EVALUATE END-PERFORM *> Genereer getallen afhankelijk van soort opgave IF WS-ACTIE = "4" COMPUTE WS-KWADRAT = FUNCTION RANDOM * 10 + 1 COMPUTE WS-ROOT-GETAL = WS-KWADRAT * WS-KWADRAT COMPUTE WS-ROOT-UITKOMST = FUNCTION SQRT(WS-ROOT-GETAL) MOVE WS-ROOT-UITKOMST TO WS-ANTWOORD-CORRECT DISPLAY "Wat is de wortel van " WS-ROOT-GETAL " ?" ACCEPT WS-ANTWOORD-GEBRUIKER ELSE COMPUTE WS-OPERAND1 = FUNCTION RANDOM * 100 + 1 COMPUTE WS-OPERAND2 = FUNCTION RANDOM * 100 + 1 EVALUATE WS-ACTIE WHEN "1" COMPUTE WS-ANTWOORD-CORRECT = WS-OPERAND1 + WS-OPERAND2 DISPLAY "Wat is " WS-OPERAND1 " + " WS-OPERAND2 " ?" WHEN "2" COMPUTE WS-ANTWOORD-CORRECT = WS-OPERAND1 - WS-OPERAND2 DISPLAY "Wat is " WS-OPERAND1 " - " WS-OPERAND2 " ?" WHEN "3" COMPUTE WS-ANTWOORD-CORRECT = WS-OPERAND1 * WS-OPERAND2 DISPLAY "Wat is " WS-OPERAND1 " * " WS-OPERAND2 " ?" END-EVALUATE ACCEPT WS-ANTWOORD-GEBRUIKER END-IF *> Controleer antwoord IF WS-ANTWOORD-GEBRUIKER = WS-ANTWOORD-CORRECT DISPLAY "Goed gedaan, het antwoord klopt." ELSE DISPLAY "Helaas, dit klopt niet." END-IF *> Volgende som ADD 1 TO WS-TELLER MOVE SPACE TO WS-ACTIE END-PERFORM DISPLAY SPACE DISPLAY "Dit was het." DISPLAY "Tot ziens!" STOP RUN.