J'ai vérifié mon code trois fois et je n'y ai pas trouvé d'erreur mais ma sortie me montre la mauvaise réponse. Le code est du testeur de jeu ajoutant simple.Erreur dans la sortie du programme SWIFT suivant
import UIKit
class ViewController: UIViewController {
var score = 0
var firstNumber: Int?
var secondNumber: Int?
var answer: Int?
var input: Int?
var count = 0
@IBOutlet weak var lblTitleLabelOUTLET: UILabel!
@IBOutlet weak var lblEquationOUTLET: UILabel!
@IBOutlet weak var txtAnswerFieldOUTLET: UITextField!
@IBOutlet weak var btnCheckAnswerOUTLET: UIButton!
@IBOutlet weak var lblScoreDisplayerOUTLET: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
displayQuestion()
}
@IBAction func pressedCheckedAnswerButtonACTION(sender: UIButton) {
if (input == answer){
score = score + 1
lblScoreDisplayerOUTLET.text = "Your score is \(score) out of \(count) "
}
else{
lblScoreDisplayerOUTLET.text = "Incorrect ans "
}
displayQuestion()
}
func displayQuestion() {
firstNumber = Int(arc4random_uniform(10))
secondNumber = Int(arc4random_uniform(10))
lblEquationOUTLET.text = String(firstNumber!) + " + " + String(secondNumber!) + " = "
answer = firstNumber! + secondNumber!
input = Int(txtAnswerFieldOUTLET.text!)
lblTitleLabelOUTLET.text = String(input)
count = count + 1
}
}
Cela a fonctionné pour moi. Mais pourriez-vous m'expliquer explicitement comment cela a fonctionné? Merci d'aider –
Tout cela a à voir avec le calendrier. De la façon dont vous l'avez codé, la variable 'input' a été calculée lorsque la question a été affichée, ce qui est trop tôt. Vous devez attendre que l'utilisateur ait tapé sa réponse et appuyé sur le bouton. Avec mon changement, 'input' est assigné après que l'utilisateur ait entré sa réponse et appuyé sur le bouton. – vacawama