TIL: Swift의 print() 함수로 문자열 회전 문제 이해하기 🔄

jeongmuyamette·2024년 11월 22일

TIL

목록 보기
6/72
post-thumbnail

TIL: Swift의 print() 함수로 문자열 회전 문제 이해하기 🔄

1. 문제 분석 🤔

입력: "abcde"
원하는 출력:
a
b
c
d
e

2. 왜 줄바꿈이 되는걸까? 🔍

// 이 두 코드는 동일하게 동작합니다
print(char)
print(char, terminator: "\n")  // 실제 내부 동작
  • print() 함수는 기본적으로 출력 후에 줄바꿈(\n)을 자동으로 추가 📝
  • 이것이 바로 문자가 세로로 출력되는 이유!

3. 문제에서 이게 왜 정답이 될까? 🎯

let input = readLine()!
for char in input {
    print(char)  // 각 문자 출력 후 자동 줄바꿈
}
  • 문제가 요구하는 것: "문자열을 시계방향으로 90도 회전" ↪️
  • print()의 기본 줄바꿈이 실제로 우리가 원하는 회전 효과를 만들어줌!
  • 의도치 않았지만, print()의 기본 동작이 문제 해결에 딱 맞아떨어진 케이스

4. 다른 출력 방식과 비교 📊

가로로 출력하고 싶다면

for char in input {
    print(char, terminator: "")
}
// 출력: abcde

다양한 구분자로 출력

for char in input {
    print(char, terminator: " ")
}
// 출력: a b c d e

오늘의 깨달음 💡

  1. 때로는 프로그래밍 언어의 기본 동작이 우리의 의도와 완벽하게 일치할 수 있음
  2. print()의 줄바꿈이 이 문제에서는 오히려 도움이 됨
  3. 문제 해결할 때 언어의 기본 특성을 잘 활용하면 간단한 코드로도 해결 가능

실전 응용 팁 🚀

  • 문자열 회전, 변환 문제를 풀 때 출력 형식 활용하기
  • terminator 매개변수를 적절히 활용하여 원하는 출력 형식 만들기
  • 기본 동작을 이해하고 활용하면 코드가 더 간단해질 수 있음

다음에 도전해볼 만한 것 📚

  • 다른 방향으로 문자열 회전하기
  • 2차원 배열로 문자열 변환하기
  • 다양한 패턴으로 문자열 출력하기

0개의 댓글