Sum and product of an array: Difference between revisions
Content added Content deleted
(Added FALSE) |
(Added COBOL solution.) |
||
Line 355: | Line 355: | ||
Sum = sum [x \\ x <-: array] |
Sum = sum [x \\ x <-: array] |
||
Prod = foldl (*) 1 [x \\ x <-: array]</lang> |
Prod = foldl (*) 1 [x \\ x <-: array]</lang> |
||
=={{header|Clojure}}== |
=={{header|Clojure}}== |
||
<lang lisp> |
<lang lisp>(defn sum [vals] (reduce + vals)) |
||
(defn sum [vals] (reduce + vals)) |
|||
(defn product [vals] (reduce * vals)) |
(defn product [vals] (reduce * vals))</lang> |
||
</lang> |
|||
=={{header|COBOL}}== |
|||
<lang cobol> IDENTIFICATION DIVISION. |
|||
PROGRAM-ID. array-sum-and-product. |
|||
DATA DIVISION. |
|||
WORKING-STORAGE SECTION. |
|||
78 Array-Size VALUE 10. |
|||
01 array-area VALUE "01020304050607080910". |
|||
03 array PIC 99 OCCURS Array-Size TIMES. |
|||
01 array-sum PIC 9(8). |
|||
01 array-product PIC 9(10) VALUE 1. |
|||
01 i PIC 99. |
|||
PROCEDURE DIVISION. |
|||
PERFORM VARYING i FROM 1 BY 1 UNTIL Array-Size < i |
|||
ADD array (i) TO array-sum |
|||
MULTIPLY array (i) BY array-product |
|||
END-PERFORM |
|||
DISPLAY "Sum: " array-sum |
|||
DISPLAY "Product: " array-product |
|||
GOBACK |
|||
.</lang> |
|||
=={{header|ColdFusion}}== |
=={{header|ColdFusion}}== |
||
Line 1,165: | Line 1,191: | ||
=={{header|PL/I}}== |
=={{header|PL/I}}== |
||
⚫ | |||
<lang PL/I> |
|||
⚫ | |||
(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); |
(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); |
||
put skip list (sum(A)); |
put skip list (sum(A)); |
||
put skip list (prod(A)); |
put skip list (prod(A));</lang> |
||
</lang> |
|||
=={{header|Pop11}}== |
=={{header|Pop11}}== |