Modulelessen (2/2)
Variabelen en BEELD
In COBOL moeten alle gebruikte variabelen binnen de DATA DIVISION worden gedeclareerd. In het bijzonder bevinden tijdelijke variabelen in het geheugen die worden gebruikt voor programmalogica zich in de WORKING-STORAGE SECTION.
Niveaunummers
COBOL-variabeledeclaratie maakt gebruik van niveaunummers om gegevens hiërarchisch te structureren en organiseren:
01: definieert een hoofdvariabele of groepsitem (het hoogste niveau).05,10,15: Definieer ondergeschikte velden binnen een groepsitem van niveau01.77: historisch aangegeven onafhankelijke elementaire variabelen die niet verder konden worden onderverdeeld.
In de moderne praktijk wordt niveau 01 vaak gebruikt om onafhankelijke elementaire variabelen te declareren.
De PICTURE (of PIC)-clausule
De clausule PICTURE (afgekort PIC) specificeert het type gegevens en de tekenlengte van de variabele. De drie fundamentele formaattekens zijn:
X(Alfanumeriek): Kan letters, cijfers en speciale tekens bevatten.PIC X(10)declareert een reeks van precies 10 tekens.
9(Numeriek): Kan alleen numerieke cijfers bevatten.PIC 9(3)declareert een geheel getal bestaande uit 3 cijfers (tot 999).
V(Impliciete decimale punt): gebruikt in decimale getallen om aan te geven waar het breukgedeelte begint (de decimale punt wordt niet fysiek opgeslagen).PIC 9(3)V99declareert een getal met 3 gehele cijfers en 2 decimalen.
De VALUE-clausule
Als u tijdens het declareren een initiële waarde aan een variabele wilt toewijzen, gebruikt u de clausule VALUE.
01 WS-PROJECT-NAME PIC X(15) VALUE "ELEARNER".
01 WS-USER-AGE PIC 9(3) VALUE 25.Alle variabeledefinities moeten eindigen met een punt ..
Probeer het zelf
Declareer een alfanumerieke variabele van niveau 01 met de naam WS-USER-NAME met een lengte van 20 tekens en stel de initiële waarde in op 'ALICE'.
Toon hint
Gebruik het formaat: 01 WS-GEBRUIKERSNAAM PIC X(20) WAARDE 'ALICE'.
Oplossing beschikbaar na 3 pogingen
Declareer een numerieke variabele van niveau 01 met de naam WS-USER-AGE van 3 cijfers met een beginwaarde van 25.
Toon hint
Gebruik de syntaxis: 01 WS-USER-AGE PIC 9(3) WAARDE 25.
Oplossing beschikbaar na 3 pogingen