-
Notifications
You must be signed in to change notification settings - Fork 3
/
HELLO-WORLD.cob
97 lines (84 loc) · 1.98 KB
/
HELLO-WORLD.cob
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 X PIC 99.
77 Y PIC 99.
77 Z PIC 99.
01 A-ARBETSAREOR.
05 A-DATUM PIC X(8).
05 A-NAMN PIC X(40).
05 A-ALDER PIC 999.
01 UTVARDERING.
05 RUBRIK.
10 FILLER PIC X(8) VALUE "RAPPORT ".
10 DATUM-RED PIC 9999/99/99.
10 FILLER PIC X(4) VALUE SPACE.
10 NAMN PIC X(40).
05 RESULTAT.
10 FILLER PIC X(30).
88 BIL-NEJ VALUE 'Du får INTE köra bil.'.
88 BIL-JA VALUE 'Du får köra bil.'.
10 FILLER PIC X(30).
88 SYS-NEJ VALUE 'Du får INTE gå på bolaget.'.
88 SYS-JA VALUE 'Du får gå på bolaget'.
PROCEDURE DIVISION.
MOVE 10 TO X
ADD 1 TO X
SUBTRACT 1 FROM X
MULTIPLY 6 BY X
DIVIDE X BY 3 GIVING Y REMAINDER Z
DISPLAY "X="X " Y="Y " Z="Z
MOVE 10 TO X
COMPUTE Y = (((X + 1) - 1) * 6) / 3
DISPLAY "Y="Y
ACCEPT A-DATUM FROM DATE YYYYMMDD
DISPLAY "Dagens datum: "A-DATUM
ACCEPT A-NAMN
ACCEPT A-ALDER
SET SYS-NEJ TO TRUE
IF A-ALDER IS GREATER THAN OR EQUAL TO 18 THEN
SET BIL-JA TO TRUE
IF A-ALDER >= 20
SET SYS-JA TO TRUE
END-IF
ELSE
SET BIL-NEJ TO TRUE
END-IF
EVALUATE A-ALDER
WHEN 0 THRU 17
SET BIL-NEJ TO TRUE
SET SYS-NEJ TO TRUE
WHEN 18
WHEN 19
SET BIL-JA TO TRUE
SET SYS-NEJ TO TRUE
WHEN OTHER
SET BIL-JA TO TRUE
SET SYS-JA TO TRUE
END-EVALUATE
EVALUATE TRUE
WHEN A-NAMN = 'Pink Panther'
MOVE 'Du är ju Rosa Pantern! Du står över lagen!' TO RESULTAT
WHEN A-ALDER < 18
SET BIL-NEJ TO TRUE
SET SYS-NEJ TO TRUE
WHEN A-ALDER >= 18 AND < 20
SET BIL-JA TO TRUE
SET SYS-NEJ TO TRUE
WHEN OTHER
SET BIL-JA TO TRUE
SET SYS-JA TO TRUE
END-EVALUATE
MOVE A-DATUM TO DATUM-RED
MOVE A-NAMN TO NAMN
DISPLAY RUBRIK
DISPLAY RESULTAT
DISPLAY LENGTH OF NAMN
PERFORM VARYING X FROM 1 BY 1 UNTIL X > LENGTH OF NAMN
IF NAMN(X:) = SPACE
EXIT PERFORM
END-IF
DISPLAY NAMN(X:1)
END-PERFORM
STOP RUN.