RosettaCodeData/Task/Greatest-subsequential-sum/ALGOL-68/greatest-subsequential-sum.alg
Ingy döt Net db842d013d A-M baby
2013-04-10 21:29:02 -07:00

29 lines
705 B
Text

main:
(
[]INT a = (-1 , -2 , 3 , 5 , 6 , -2 , -1 , 4 , -4 , 2 , -1);
INT begin max, end max, max sum, sum;
sum := 0;
begin max := 0;
end max := -1;
max sum := 0;
FOR begin FROM LWB a TO UPB a DO
sum := 0;
FOR end FROM begin TO UPB a DO
sum +:= a[end];
IF sum > max sum THEN
max sum := sum;
begin max := begin;
end max := end
FI
OD
OD;
FOR i FROM begin max TO end max DO
print(a[i])
OD
)