numaralı sürümde 'let' sabiti sabittir. Bu nedenle temel olarak 2 etiket içinde 20'ye kadar 2 rastgele sayı atamaya çalışıyorum ve kullanıcının doğru sonucu bulması gerekecek. Cevabın doğru olup olmadığına göre farklı bir görünüm belirecek ve bu 10 kez gerçekleşecektir. Sorun şu ki, kullandığım "i" sayacı üzerinde bir hata alıyorum ve değişken olarak bildirsem de, bir sabit olduğunu söyleyen bir hata alıyorum.Değere atanamıyor: 'i',
@IBAction func submit(sender: AnyObject) {
//declarations
var i: Int //counter for 10 repetitions
var result = 0
for i in 0..<10 {
//generate 2 random numbers up to 20
var rn1 = arc4random_uniform(20)
var rn2 = arc4random_uniform(20)
//assign the rundom numbers to the labels
n1.text = String(rn1)
n2.text = String(rn2)
result = Int((rn1) + (rn2))
//show respective view based on if answer is correct or not
if answer.text == String(result) {
i = i + 1 //here i get the error: cannot assign to value 'i' is a 'let' constant
performSegueWithIdentifier("firstsegue", sender: self)
}else {
performSegueWithIdentifier("wrong", sender: self)
}
}
}
Koşul eşleşiyorsa, döngüyü bir kez mi kırıyorsunuz? –