ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Programmers] Swift 알고리즘 | Lv.0 각도기
    ► Swift/Programmers 2024. 1. 22. 21:06
    반응형

     

    🔒 문제 설명

    각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요.

    • 예각 : 0 < angle < 90
    • 직각 : angle = 90
    • 둔각 : 90 < angle < 180
    • 평각 : angle = 180

    🔒 제한사항  

    • 0 < angle ≤ 180
    • angle 정수입니다.

    🔒 입출력 예

    angle result
    70 1
    91 3
    180 4

    🔒 입출력 예 설명

    입출력 예 #1

    • angle이 70이므로 예각입니다. 따라서 1을 return합니다.

    입출력 예 #2

    • angle이 91이므로 둔각입니다. 따라서 3을 return합니다.

    입출력 예 #2

    • angle 180이므로 평각입니다. 따라서 4 return합니다.

     

    🔐 solution of mine

    import Foundation
    
    func solution ( _ angle:Int ) -> Int {
        return (1...89 ~= angle) ? 1 : (90 == angle) ? 2 : (91...179 ~= angle) ? 3 : 4
    }
    
    print(solution(70)) // expected result: 1
    print(solution(91)) // expected result: 3
    print(solution(180)) // expected result: 4

     


     

    🔐 solution of others

    import Foundation
    
    func solution ( _ angle:Int ) -> Int {
        return angle<90 ? 1 : angle == 90 ? 2 : angle < 180 ? 3 : 4
    }
    
    print(solution(70)) // expected result: 1
    print(solution(91)) // expected result: 3
    print(solution(180)) // expected result: 4

     

    🔐 solution of others

    guard 문

    switch 문

    import Foundation
    
    func solution (_ angle:Int) -> Int {
        guard angle > 0 , angle <= 180 else { return -1 }
        
        switch angle {
        case 0..<90 : return 1
        case 90: return 2
        case 90..<180: return 3
        case 180: return 4
        default: return -1
        }
    }
    
    print(solution(70)) // expected result: 1
    print(solution(91)) // expected result: 3
    print(solution(180)) // expected result: 4

     

    🔐 solution of others

    if 문

    import Foundation
    
    func solution (_ angle:Int) -> Int {
        if 0..<90 ~= angle { return 1 }
        else if 90 == angle { return 2 }
        else if 180 > angle { return 3 }
        else if 180 == angle { return 4 }
        return -1
    }
    
    print(solution(70)) // expected result: 1
    print(solution(91)) // expected result: 3
    print(solution(180)) // expected result: 4

     


     
    반응형
Designed by Tistory.