

funcで返り値をdouble型にした時、returnでエラーが出てしまいます。  
原因がわかる方がいましたら、ご教授お願いします。

[code]

    var pcascore:Array<Double> = [3.2, 2.4, 3.5, 1.3]
    
    func arrayplus(pcascore : Double... )-> Double { // 引数の合計値を求める
        var total:Double = 0.0
    
        for n in pcascore {
            total += n
        }
        //print(total)
        pcaallscore.append(total)
    
        return pcaallscore
        // Cannot convert return expression of type '[Double]' to return type 'Double'
        // というエラーが出てしまいます。
    }
    
[/code]


CC BY-SA 3.0
2015-11-18T08:45:22.473
18982
2015-12-19T00:15:06.933
2015-11-18T09:16:23.987
7290
12536
question
swift xcode
funcで返り値をdouble型にした時のreturnでのエラー


pcaallscore は Double のリストで、リターンするべきなのは Double（単体の変数）だからだと思います。  
戻りを配列で返すのであれば関数の定義を、

[code]

    func arrayplus(pcascore : Double... )-> Array<Double> {
    
[/code]

とするべきではないでしょうか？


CC BY-SA 3.0
2015-11-18T08:52:25.733
18983
2015-11-18T08:52:25.733
7290
18982
answer


合計を返すだけなら `pcaallscore.append(total)` は不要で、  
単に `return total` でよい、と思います。


CC BY-SA 3.0
2015-11-18T23:35:21.133
19006
2015-11-18T23:35:21.133
8589
18982
answer