September 2017 Update
This commit is contained in:
parent
bba7bfd280
commit
ba8067c3b7
14570 changed files with 153136 additions and 63871 deletions
|
|
@ -0,0 +1,19 @@
|
|||
// version 1.0.6
|
||||
|
||||
fun initMovingAverage(p: Int): (Double) -> Double {
|
||||
if (p < 1) throw IllegalArgumentException("Period must be a positive integer")
|
||||
val list = mutableListOf<Double>()
|
||||
return {
|
||||
list.add(it)
|
||||
if (list.size > p) list.removeAt(0)
|
||||
list.average()
|
||||
}
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val sma4 = initMovingAverage(4)
|
||||
val sma5 = initMovingAverage(5)
|
||||
val numbers = listOf(1.0, 2.0, 3.0, 4.0, 5.0, 5.0, 4.0, 3.0, 2.0, 1.0)
|
||||
println("num\tsma4\tsma5\n")
|
||||
for (number in numbers) println("${number}\t${sma4(number)}\t${sma5(number)}")
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue