【问题标题】:Swift basic int not convertible to () [duplicate]Swift基本int不能转换为()[重复]
【发布时间】:2015-09-12 17:29:22
【问题描述】:

所以我最近刚刚学习了编程中的递归,所以我试图在 swift 中构建一个函数来返回所分配值的阶乘。 只是为了让你们有一个想法,这是一个可以做到这一点的代码,但在 Ruby 中。

def fat(num)
    if (num==1)
        return num
    else
        return num*fat(num-1)
    end
end
    p=gets.to_i
    x = fat(p)
    print ("#{x}")

我试图使用 swift 编写几乎相同的代码,但当我开始编码时我意识到有一个错误

func fat (num: Int){
    if(num==1){
    return num
    }
}

它说第 3 行“int 不能转换为 '()'” 所以我真的不明白这里发生了什么...... 我查了一下,因为这种语言太新了,我什么也找不到。

【问题讨论】:

    标签: swift recursion int


    【解决方案1】:

    只需替换这一行

    func fat (num: Int){
    

    用这条线

    func fat (num: Int) -> Int {
    

    【讨论】:

      猜你喜欢
      • 2014-10-09
      • 1970-01-01
      • 1970-01-01
      • 2014-10-16
      • 1970-01-01
      • 1970-01-01
      • 2023-03-09
      • 2014-06-04
      • 2018-02-05
      相关资源
      最近更新 更多