Daniel@0: function [startf,stopf,maxsofar]=maxsum(in) Daniel@0: Daniel@0: maxsofar=0; Daniel@0: maxendinghere=0; Daniel@0: startf=1; Daniel@0: stopf=1; Daniel@0: aktstartf=1; Daniel@0: Daniel@0: for i=1:length(in) Daniel@0: if (maxendinghere+in(i) < 0) Daniel@0: maxendinghere=0; Daniel@0: aktstartf=i+1; Daniel@0: else Daniel@0: maxendinghere=maxendinghere+in(i); Daniel@0: end Daniel@0: Daniel@0: if(maxendinghere > maxsofar) Daniel@0: maxsofar=maxendinghere; Daniel@0: stopf=i; Daniel@0: startf=aktstartf; Daniel@0: end Daniel@0: end