Programmeren in COBOL/Berekeningen/Oefeningen

Uit Wikibooks

Programmeren in COBOL

Inhoudsopgave




Dit zijn oefeningen voor het hoofdstuk berekeningen. De opgaven zijn opgedeeld in theorie en praktijk. De opgaven komen als eerst en vanonder zijn de oplossingen. Let wel dat er meerdere mogelijke oplossingen zijn voor een opgave, zeker naarmate het moeilijker wordt.

Opgaven[bewerken]

Theorie[bewerken]

  • Geef de 5 woorden waarmee je in COBOL kunt rekenen.
  • Hoe wordt een macht gedaan in COBOL?
  • Hoe kun je een getal afronden?

Praktijk[bewerken]

Opgave 1: intrest[bewerken]

Vraag aan de gebruiker het geld dat wordt geleend en de rentevoet. Bereken dan de intrest via COMPUTE na 1 jaar.

Opgave 2: oppervlakte[bewerken]

Bereken via COMPUTE eerst de oppervlakte van een rechthoek, daarna dat van een een driehoek en daarna dat van een cirkel. Bij de recht- en driehoek wordt de basis en de hoogte gevraagd aan de gebruiker en bij de cirkel wordt de diameter gevraagd.

Opgave 3: zonder COMPUTE[bewerken]

Herhaal opgave 1 en 2 maar dan zonder COMPUTE.

Oplossingen[bewerken]

Theorie[bewerken]

  • Geef de 5 woorden waarmee je in COBOL kunt rekenen.
COMPUTE, ADD, SUBTRACT, MULTIPLY, DIVIDE
  • Hoe wordt een macht gedaan in COBOL?
**
  • Hoe kun je een getal afronden?
ROUNDED

Praktijk[bewerken]

Opgave 1: intrest[bewerken]

COBOL-code: intrest

       IDENTIFICATION DIVISION.
       PROGRAM-ID. intrest.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  bedrag     PIC 9999V99.
       77  rentevoet  PIC 99v99.
       77  intrest    PIC 999v99.

       77  intrestuit PIC 999.99.

       PROCEDURE DIVISION.
       hoofd.
           DISPLAY "Geef het bedrag waarop intrest berekend wordt."
           ACCEPT bedrag NO BEEP
           DISPLAY "Geef de rentevoet in percent."
           ACCEPT rentevoet NO BEEP
           COMPUTE intrest ROUNDED  = bedrag * rentevoet / 100
           MOVE intrest TO intrestuit
           DISPLAY "Dit is de intrest na 1 jaar: " intrestuit
           STOP RUN.

Opgave 2: oppervlakte[bewerken]

COBOL-code: oppervlakte

       IDENTIFICATION DIVISION.
       PROGRAM-ID. intrest.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  basis  PIC 99.
       77  hoogte PIC 99.
       77  diamtr PIC 99.
       77  pi     PIC 9V99 VALUE 3.14.

       77  uitkomst PIC 9999V99.
       77  uitvoer  PIC 9999.99.


       PROCEDURE DIVISION.
       hoofd.
           DISPLAY "Geef de hoogte van de rechthoek."
           ACCEPT hoogte NO BEEP
           DISPLAY "Geef de basis van de rechthoek."
           ACCEPT basis NO BEEP

           COMPUTE uitkomst = basis * hoogte
           MOVE uitkomst TO uitvoer
           DISPLAY "Dit is de oppervlakte: " uitvoer

           DISPLAY "Geef de hoogte van de driehoek."
           ACCEPT hoogte NO BEEP
           DISPLAY "Geef de basis van de driehoek."
           ACCEPT basis NO BEEP

           COMPUTE uitkomst = basis * hoogte / 2
           MOVE uitkomst TO uitvoer
           DISPLAY "Dit is de oppervlakte: " uitvoer

           DISPLAY "Geef de diameter van de circkel."
           ACCEPT diamtr NO BEEP

           COMPUTE uitkomst = pi * (diamtr / 2) ** 2
           MOVE uitkomst TO uitvoer
           DISPLAY "Dit is de oppervlakte: " uitvoer
           STOP RUN.

 

Informatie afkomstig van https://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.