を見つける関数をscalaで記述しようとしていますSum of any (passed) function from a to b
。さらに、テールワイズ再帰的な方法でそれをやろうとしています。テールワイズ再帰階乗関数を管理したので、それを「合計」関数に渡し、下限a
から上限までのすべての階乗の合計を見つけたいと思いb
ます。これが私がこれまでに持っているものです
object Sum {
def Summation( f : Double => Double , a: Double , b: Double):Double = {
def tailwiseSummation(accumulator:Double , count:Double):Double = {
if(count > b) accumulator
else tailwiseSummation(accumulator + f, a+1) // i dont know what to do here
}
}
def Factorial(num: Double): Double = { // i want to pass this function to `Summation`
def tailwise(accumulator: Double, deprecator: Double): Double = {
if (deprecator == 0) accumulator
else tailwise(accumulator * deprecator, deprecator - 1) // deprecator deprecating 1 unit at a time
}
tailwise(1, num)
}
}
誰か助けてくれませんか?