如何创建一个if语句来询问与之相关的求和

时间:2015-04-11 01:21:47

标签: swift if-statement xcode6

我想让计算机计算

if 1 or 2 + 2 or 3 + 4 or 5 == 6{
  // do this
  }

并且它将通过组合并在第一个数字之间找到1然后是2然后3并且等于6我怎么能在代码中执行此操作?

2 个答案:

答案 0 :(得分:0)

目前还不清楚你要做什么,但根据你的最新评论,这是我最好的猜测。

给定一个表达式列表,它们中的任何一个都等于6?

let expressions = [ 1, 2 + 2, 3 + 4, 5, 6 ]
for expression in expressions {
  if expression == 6 {
    println("found the number 6!")
    break
  }  
}

以上将打印"找到数字6!"如果任何表达式等于6,在这个例子中,数组中的最后一个条目是6,所以它将打印"找到数字6!"

答案 1 :(得分:0)

我相信你要问的问题是:给定列表[1,2][2,3][3,4],这些值的组合总和为6.如果是这样,你只是想要总结并检查。

let xs = [1,2]
let ys = [2,3]
let zs = [3,4]

func combine<T,U,V>(xs: [T], ys:[U], zs:[V]) -> [(T,U,V)] {
    var result = [(T,U,V)]()
    for x in xs {
        for y in ys {
            for z in zs {
                result.append(x,y,z)
            }
        }
    }
    return result
}

let combinations = combine(xs, ys, zs)
    .filter { (x, y, z) in (x + y + z) == 6 }