使用while函数快速滚动骰子并打印结果,直到结果为1

问题描述 投票:2回答:2

我对Swift真的很陌生,我有一个任务要求我创建一个while循环,该循环模拟重复滚动6面骰子,直到掷出1。每卷之后,打印该值。

在过去两个小时内,我尝试执行的几乎每一次迭代中,我都会以无限循环结束,从而使Xcode爆炸。

任何帮助都会很棒!

var dieRoll = Int.random(in: 1...6)

while dieRoll <= 6 {
    print (dieRoll)
    if dieRoll == 1 {
        print ("You win!")
    }
}

至此,它不再无限运行,但是它表现得很奇怪,并且在不打印“ You win!”的情况下返回1的值。

func dieRoll(x: Int) -> Int {
    return Int.random(in:1...6)
}

while dieRoll(x: 0) > 1 {
    print(dieRoll(x: 0))
    if dieRoll(x: 1) == 1 {
        print("You win!")
    }
    else {
        RETURN
    }
}

我对Swift真的很陌生,我有一个任务要求我创建一个while循环,该循环模拟重复滚动6面骰子,直到掷出1。每卷之后,打印该值。在几乎每个...

swift random while-loop
2个回答
0
投票

好的,所以我摆脱了字符串文本,专注于代码在说什么与键入在说什么。最终(对于经验丰富的人来说可能是一种怪兽),但是看起来像这样。


-1
投票

您的dieRoll变量被声明为VARIABLE,但您永远都不会更改它!尝试在While循环中“重新滚动”

© www.soinside.com 2019 - 2024. All rights reserved.