Я проверил свой код трижды и не смог найти в нем никакой ошибки, но мой результат показывает мне неправильный ответ. Код имеет простой добавочный тестер игры.Ошибка в выходе следующей программы SWIFT
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
}
}
Это сработало для меня. Но не могли бы вы объяснить мне, как это работает. Спасибо за помощь –
Все зависит от времени. Как вы его кодировали, переменная 'input' была вычислена, когда вопрос был отображен, что слишком рано. Вам нужно подождать, пока пользователь набрал ответ и нажал кнопку. С моим изменением «ввод» назначается после ввода пользователем своего ответа и нажатия кнопки. – vacawama