[O] Optimize factoring problem initialization

This commit is contained in:
Hykilpikonna
2021-01-27 18:07:52 -05:00
parent 3ad22b4a9c
commit 00e55b44cb
3 changed files with 19 additions and 23 deletions
-12
View File
@@ -26,15 +26,3 @@ func shakeAction() {
}
}
}
// Handles the core logic behind the factoring alarm
func factorAction(puzzleQuestionLabel: UILabel) -> [Int] {
let problem = QuadraticProb()
let answer = problem.getAnswer()
let problemString = problem.getProblem()
puzzleQuestionLabel.text = "Solve: \(problemString)"
print("Answer: \(answer)")
return answer
}
@@ -90,7 +90,7 @@ class AlarmActivationViewController: UIViewController
switch alarm.wakeMethod.name
{
case "Factor":
self.puzzleAnswers = factorAction(puzzleQuestionLabel: puzzleQuestionLabel)
initFactorProblem()
puzzleView.show()
case "RPS":
rpsView.show()
@@ -105,17 +105,26 @@ class AlarmActivationViewController: UIViewController
}
}
}
func initFactorProblem()
{
let problem = QuadraticProb()
puzzleAnswers = problem.getAnswer()
puzzleQuestionLabel.text = "Solve: \(problem.getProblem())"
print("Answer: \(puzzleAnswers)")
}
/**
Verfies and ends factoring WVM
*/
@IBAction func checkBinomialSolution(_ sender: Any) {
if let input = puzzleAnswerInput.text {
if let numericalInput = Int(input) {
if puzzleAnswers.contains(numericalInput) {
endAlarm()
}
}
@IBAction func checkBinomialSolution(_ sender: Any)
{
if let input = puzzleAnswerInput.text,
let numericalInput = Int(input),
puzzleAnswers.contains(numericalInput)
{
endAlarm()
}
}
@@ -124,8 +133,7 @@ class AlarmActivationViewController: UIViewController
*/
@IBAction func rpsChoice(_ sender: UIButton)
{
let rps = RPS()
if rps.playRPS(you: [.rock, .paper, .scissors][sender.tag], computer: RPS.choices.randomElement()!)
if RPS.playRPS(you: [.rock, .paper, .scissors][sender.tag], computer: RPS.choices.randomElement()!)
{
endAlarm()
}
+1 -1
View File
@@ -171,7 +171,7 @@ class RPS
case scissors = "Scissors"
}
func playRPS(you: Choice, computer: Choice) -> Bool
static func playRPS(you: Choice, computer: Choice) -> Bool
{
return you == .rock && computer == .scissors ||
you == .paper && computer == .rock ||