스파르타 코딩 클럽 - iOS 스타터 6기/알고리즘 코드카타

4. 스파르타 코딩 클럽 - 3월 14일 코딩테스트 연습 (코드카타)

seongpil Heo 2025. 3. 14. 10:02

 ❓ 오늘의 문제

1. 문자 반복 출력하기

  • 문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해 보세요

문자 반복 출력하기

나의 답안 코드

import Foundation

func solution(_ my_string:String, _ n:Int) -> String {
    var str = ""
    for i in my_string {
        for j in 1...n {
            str = str + String(i)
        }
    }
    return str
}

 

2. 각도기

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

각도기

나의 답안 코드

import Foundation

func solution(_ angle:Int) -> Int {
    var result = 0
    if angle > 0 && angle < 90 {
        result = 1
    } else if angle == 90 {
        result = 2
    } else if angle > 90 && angle < 180 {
        result = 3
    } else if angle == 180 {
        result = 4
    } else {
        result = 0
    }
    return result
}

 ✓ TIL

오늘은 2문제 풀었다!

아침 9시가 되면 zep 코어반에 모여서 다 같이 알고리즘 문제 풀이 시간을 가진다.

잠에서 덜 깬 상태로 화면공유를 하며 문제를 푼다.

 

근데 이상하게 알고리즘 문제를 풀면 잠이 조금 깨는 느낌이다.

공부하기 전 미리 준비운동을 하는 느낌... 

import Foundation

func solution(_ my_string:String, _ n:Int) -> String {
    var str = ""
    for i in my_string {
        for j in 1...n {
            str = str + String(i)
        }
    }
    return str
}

 

일단 오늘 문제에서 시간이 걸린 점은 char 값을 string에 저장하려면 반드시 형 변환이 필요하다는 점이다.

처음에 str = str + i 를 했는데

Cannot convert value of type 'Character' to expected argument type 'String' 이런 오류가 발생했다.

이 오류는 Swift에서 Character 타입을 String 타입으로 변환하려고 할 때 발생하는 오류이다.

내가 str 변수를 String 타입으로 선언했기 때문에 처음 for문에서 문자열의 하나씩 문자를 가져온 뒤 str 변수에 저장하려면

String으로 타입 변환이 필요하다.

 

따라서 str = str + i 가 아니라 str = str + String(i) 로 작성해야 문제없이 코드가 동작한다.


 😼 GitHub 

GitHub 잔디

오늘도 잔디 심기 완료!