Just came across the following, and please don't come back with pedantic remarks about undeclared variables, the code is just to show what's there:
dcl sum fixed (7) init (-0.1); for i = 1 to whatever; if a(i) >= 0 then sum = sum + a(i); end; if substr(unspec(sum), 25, 8) ^= '0d'bx then put data(sum); In other words if all a(i) are negative, nothing is printed. A comment in the code suggests that this is faster code, on modern OoO z/OS systems, than the more logical: dcl sum fixed (7) init (-1); for i = 1 to whatever; if a(i) >= 0 then if sum ^= -1 then sum = sum + a(i); else sum = a(i); end; It probably is if the value of whatever is in the order of 42 gazillion, but any other thoughts about this? Robert -- Robert AH Prins robert.ah.pr...@gmail.com Some programming @ <https://prino.neocities.org/zOS/zOS%20Tools.html> ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN