Replace Operand with Operator

This commit is contained in:
TheAlgorithm476 2025-05-21 10:15:58 +02:00
parent 17020fcab4
commit 7c3ba17a36
2 changed files with 8 additions and 8 deletions

View File

@ -1,4 +1,4 @@
enum Operand {
enum Operator {
case add
case sub
case mul

View File

@ -5,7 +5,7 @@ struct ViewModel {
private var numberBuffer: String = ""
private var number1: Double? = nil
private var number2: Double? = nil
private var operand: Operand? = nil
private var op: Operator? = nil
@State
private(set) var display: String = ""
@ -13,7 +13,7 @@ struct ViewModel {
numberBuffer = ""
number1 = nil
number2 = nil
operand = nil
op = nil
display = ""
}
@ -31,18 +31,18 @@ struct ViewModel {
display = numberBuffer
}
mutating func operation(_ operand: Operand) {
mutating func operation(_ op: Operator) {
guard !numberBuffer.isEmpty && number1 == nil else { return }
self.operand = operand
self.op = op
if number1 == nil { number1 = Double(numberBuffer) }
else { number2 = Double(numberBuffer) }
numberBuffer = ""
if operand == .sqrt {
if op == .sqrt {
display = String(sqrt(number1!))
number1 = nil
self.operand = nil
self.op = nil
}
}
@ -52,7 +52,7 @@ struct ViewModel {
var result: Double = 0.0
switch operand {
switch op {
case .add:
result = add_nums(number1!, number2!)
case .sub: