无法执行命令:已杀

我正在使用IBM的在线Swift沙箱 ,我正在尝试运行此代码,但它给了我一个错误:

代码:

var a: Double = 1.0 var b: Double = 2.0 var c: Double = 3.0 var x: Double = 0.0 func x_func(a_var: Double, b_var: Double, c_var: Double) -> Double { x = (-b + (b^2 - 4*a*c)^(1/2))/(2*a) return x } print(x_func(a_var: a, b_var: b, c_var: c)) print(a) print(b) print(c) 

错误:

 :0: error: unable to execute command: Killed :0: error: compile command failed due to signal (use -v to see invocation) 

有人可以帮我弄清楚出了什么问题吗? 我是Swift的新手,所以我在这里看不到错误。

当你想使用指数时尝试使用pow^不能与Swift一起使用。 使用Swift ^生成按位异或 – 不是指数。

 import Foundation var a: Double = 1.0 var b: Double = 2.0 var c: Double = 3.0 var x: Double = 0.0 func x_func(a_var: Double, b_var: Double, c_var: Double) -> Double { x = (-b + pow((pow(b, 2) - 4*a*c), 1/2))/2*a return x } 

确保在使用IBM Sandbox或HackerRank之类的东西时导入Foundation框架! 我知道这很容易忘记,如果你这样做会引起很多麻烦。

另外,除非你在你的x_func方法中进行额外的计算,否则你要求传递的参数是你甚至不使用的。 您可以删除属性,或者更改函数以不接受任何变量 – 删除属性并将其更改为以下内容可能更有效:

 import Foundation func x_func(a: Double, b: Double, c: Double) -> Double { x = (-b + pow((pow(b, 2) - 4*a*c), 1/2))/2*a return x }