Jump to content

Product of divisors: Difference between revisions

Add COBOL
(→‎{{header|jq}}: streaming approach)
(Add COBOL)
Line 374:
{{out}}
<pre>1 2 3 8 5 36 7 64 27 100 11 1728 13 196 225 1024 17 5832 19 8000 441 484 23 331776 125 676 729 21952 29 810000 31 32768 1089 1156 1225 10077696 37 1444 1521 2560000 41 3111696 43 85184 91125 2116 47 254803968 343 125000 2601 140608 53 8503056 3025 9834496 3249 3364 59 46656000000 61 3844 250047 2097152 4225 18974736 67 314432 4761 24010000 71 139314069504 73 5476 421875 438976 5929 37015056 79 3276800000 59049 6724 83 351298031616 7225 7396 7569 59969536 89 531441000000 8281 778688 8649 8836 9025 782757789696 97 941192 970299 1000000000 </pre>
 
=={{header|COBOL}}==
<lang cobol> IDENTIFICATION DIVISION.
PROGRAM-ID. PRODUCT-OF-DIVISORS.
 
DATA DIVISION.
WORKING-STORAGE SECTION.
01 VARIABLES.
03 DIVISOR-PRODUCTS PIC 9(9) OCCURS 50 TIMES.
03 NUM PIC 999.
03 MUL PIC 999.
01 OUTPUT-FORMAT.
03 NUM-OUT PIC Z(9)9.
03 LINE-PTR PIC 99 VALUE 1.
03 OUT-LINE PIC X(50) VALUE SPACES.
 
PROCEDURE DIVISION.
BEGIN.
PERFORM INIT VARYING NUM FROM 1 BY 1
UNTIL NUM IS GREATER THAN 50.
PERFORM CALCULATE-MULTIPLES VARYING MUL FROM 1 BY 1
UNTIL MUL IS GREATER THAN 50.
PERFORM OUTPUT-NUM VARYING NUM FROM 1 BY 1
UNTIL NUM IS GREATER THAN 50.
STOP RUN.
 
INIT.
MOVE 1 TO DIVISOR-PRODUCTS(NUM).
CALCULATE-MULTIPLES.
PERFORM MULTIPLY-NUM VARYING NUM FROM MUL BY MUL
UNTIL NUM IS GREATER THAN 50.
MULTIPLY-NUM.
MULTIPLY MUL BY DIVISOR-PRODUCTS(NUM).
 
OUTPUT-NUM.
MOVE DIVISOR-PRODUCTS(NUM) TO NUM-OUT.
STRING NUM-OUT DELIMITED BY SIZE INTO OUT-LINE
WITH POINTER LINE-PTR.
IF LINE-PTR IS EQUAL TO 51,
DISPLAY OUT-LINE,
MOVE SPACES TO OUT-LINE,
MOVE 1 TO LINE-PTR.</lang>
{{out}}
<pre> 1 2 3 8 5
36 7 64 27 100
11 1728 13 196 225
1024 17 5832 19 8000
441 484 23 331776 125
676 729 21952 29 810000
31 32768 1089 1156 1225
10077696 37 1444 1521 2560000
41 3111696 43 85184 91125
2116 47 254803968 343 125000</pre>
 
=={{header|Cowgol}}==
2,114

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.