gpt4 book ai didi

ios - 按下按钮时应用程序卡住

转载 作者:行者123 更新时间:2023-11-28 12:54:33 25 4
gpt4 key购买 nike

所以,我的类(class)作业是为我学校七年级的学生制作一个应用程序来学习数学。

在这个特定的 View Controller 中,我正在制作一些他们可以用来练习素数的东西。我无法使用 override func viewDidLoad(){} 加载所有内容,因此我实现了一个按钮来激活随机数、模数以检查它是否为质数,并将其插入标签。

这是我在类中的所有代码:

@IBAction func primeBack(sender: UIButton) {
self.performSegueWithIdentifier("primeBack", sender: nil)
}
@IBOutlet var start: UIButton!

@IBOutlet var primeNum: UILabel!

var num = 1
var check = Double()
var temp2 = Double()

let lower : UInt32 = 1
let upper : UInt32 = 100

override func viewDidLoad() {
super.viewDidLoad()
primeNum.hidden = true
start.hidden = false

}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

@IBAction func start(sender: UIButton) {

primeNum.hidden = false

let temp1 = (arc4random_uniform(upper - lower) + lower)
primeNum.text = String(temp1)

while num <= 12
{
check = Double(temp1) / Double(num)
temp2 = check % 1

if temp2 == 0
{
num++
}
else
{
num = 12
}
}
start.hidden = true

}

@IBAction func prime(sender: UIButton) {
if temp2 == 0
{
self.performSegueWithIdentifier("primeCorrect", sender: nil)
}
else
{
self.performSegueWithIdentifier("primeIncorrect", sender: nil)
}
}
@IBAction func notPrime(sender: UIButton) {
if temp2 == 0
{
self.performSegueWithIdentifier("primeIncorrect", sender: nil)
}
else
{
self.performSegueWithIdentifier("primeCorrect", sender: nil)
}
}

最佳答案

调试并观察 temp2 的值发生了什么。我怀疑它永远不会等于零,因此你的 while 循环永远不会结束

关于ios - 按下按钮时应用程序卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35371720/

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