gpt4 book ai didi

swift - 计算参数的平均值

转载 作者:行者123 更新时间:2023-11-28 09:57:08 25 4
gpt4 key购买 nike

我正在学习“The Swift Programming Language”和相关的 playground 文件。

有人问我有一个部分:编写一个函数来计算其参数的平均值。

鉴于上下文,这是我的解决方案

func averageOf(numbers: Int...) -> Int {
var sum = 0
var countOfNumbers = 0
for number in numbers {
sum += number
countOfNumbers += 1
}
var result: Double = Double(sum) / Double(countOfNumbers)
return result
}

averageOf()
averageOf(10, 20, 30)

如您所见,我必须将结果称为 Double(即总和/countOfNumbers)。

但是,在这种情况下我无法返回结果,因为我在转换“Double”类型的返回表达式时遇到错误。

然后我尝试返回 Double(result) 但没有成功。

为什么这不起作用,我如何才能最好地理解我在这里做错了什么?

最佳答案

只看你的代码(并没有给你另一个,从许多巧妙的方法中计算这个):你的函数期望返回类型 Int,但你返回 Double

下面是您的代码,其中包含注释更正:

func averageOf(numbers: Int...) -> Double {
var sum = 0 // ^ note the return type here
var countOfNumbers = 0
for number in numbers {
sum += number
countOfNumbers += 1
}
/* Note here: you declare 'result' to be of type Double */
var result: Double = Double(sum) / Double(countOfNumbers)
return result /* and return 'result'; hence returning a Double */
}

averageOf(10, 20, 30) // 20.0 <-- a Double

关于swift - 计算参数的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34936431/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com