잡초의 일지

[Swift] 계산기 만들기. 입력한대로 계산하는 코드. 본문

[코딩] 하는것/Swift

[Swift] 계산기 만들기. 입력한대로 계산하는 코드.

JabCho 2020. 2. 17. 15:56
728x90
반응형
SMALL

코드.
입력과 실행결과.

import Foundation

var a = readLine()
var res: Int

if let a=a {
    let arr = a.components(separatedBy: " ")
    res = Int (arr[0])!
    
    for var i in 1..<arr.count {
    
        if arr[i]=="+" {
            res = res + Int(arr[i+1])!
        }
        else if arr[i]=="-" {
            res = res - Int(arr[i+1])!
        }
        else if arr[i]=="*" {
            res = res * Int(arr[i+1])!
        }
        else if arr[i]=="/" {
            res = res / Int(arr[i+1])!
        }
        
        i = i+2
    }
   
    print(res)
}

 

키보드에서 입력받은대로 계산한다. 사칙연산 계산이 가능하다.

입력받은대로 계산하다보니, 1+2*3 이라고 입력되면 7이 아닌 9가 나온다. 

곱셉, 나눗셈을 먼저 계산할수있는 계산기도 만들어봐야겠다.

-----------------------------------------------------------------------------------

개강하고 강의를 듣다가 알았다. 이런 식 말고 postfix식이라는 것이 있다는 것을..

그니까 234+*는 (3+4)*2 라는 뜻이다. (, ), -, +, *, / 에 각각 우선순위를 정해주고 계산한다.... 음............postfix는 따로 과제가 없었어서...
스위프트로 시간날 때 한번 풀어봐야겠다.

728x90
반응형
LIST
Comments