Averages/Simple moving average: Difference between revisions

Content added Content deleted
(→‎{{header|D}}: replaced incorrect version)
(→‎{{header|D}}: replace _if_ statement with conditional expressions)
Line 289:
T[] data = new T[](period);
T drop, sum = cast(T) 0 ;
int index, filled, count ;
 
foreach(ref e ; data) e = cast(T)0 ; // D initialize float type to NaN
Line 298:
index = (index + 1) % period ;
sum += ( v - drop ) ;
if(filled = filled >= period) ? period : filled + 1 ;
return sum / count = periodfilled ;
else
count = ++filled ;
return sum / count;
}