반응형
1. 문자열 str이 주어질 때, str을 출력하는 코드를 작성해 보세요.
제한사항
- 1 ≤ str의 길이 ≤ 1,000,000
- str에는 공백이 없으며, 첫째 줄에 한 줄로만 주어집니다.
입력 #1
HelloWorld!
출력 #1
HelloWorld!
제출 답안
import Foundation
let s1 = readLine()!
print(s1)
readLine() 이란?
https://developer.apple.com/documentation/swift/readline(strippingnewline:)
사용자로부터 표준 입력(터미널이나 콘솔)을 통해 텍스트를 입력받는 데 사용된다.
이는 주로 간단한 CLI(Command Line Interface) 기반의 Swift 프로그램에서 사용자 입력을 처리할 때 유용.
기능 및 동작
- 입력 대기:
- 사용자가 엔터 키를 누르기 전까지 입력을 기다린다.
- EOF(End Of File) 처리:
- 입력이 종료되거나 EOF가 발생하면 nil을 반환한다.
- EOF는 파일 또는 입력 데이터가 종료되었음을 나타내는 중요한 개념으로, 올바른 데이터 처리 흐름을 유지하는 데 필수적
- 동기적 실행:
- 입력을 처리하기 전까지 실행을 차단(block)한다.
2. 정수 a와 b가 주어집니다. 각 수를 입력받아 입출력 예와 같은 형식으로 출력하는 코드를 작성해 보세요.
제한사항- -100,000 ≤ a, b ≤ 100,000
입력 #1
4 5
출력 #1
a = 4
b = 5
제출 답안
import Foundation
let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! }
// readLine()! - 사용자로부터 입력을 받는다. 반환값: 옵셔널(String?), 값이 nil이 아닐 경우 강제로 언래핑(!)하여 String으로 변환한다.
// components(separatedBy: [" "]) - 문자열을 특정 구분자로 나눠 배열로 반환한다.
// ["10", "20", "30"]
// .map { Int($0)! } - 문자열 배열의 각 요소를 정수(Int)로 변환한다.
// 배열의 각 요소 $0를 순회하고 Int로 변환
// 변환 결과는 새로운 배열에 저장한다.
let (a, b) = (n[0], n[1])
print("a = \(a)")
print("b = \(b)")
3. 문자열 str과 정수 n이 주어집니다.
str이 n번 반복된 문자열을 만들어 출력하는 코드를 작성해 보세요.
제한사항
- 1 ≤ str의 길이 ≤ 10
- 1 ≤ n ≤ 5
입출력 예
입력 #1
string 5
출력 #1
stringstringstringstringstring
제출 답안
import Foundation
let inp = readLine()!.components(separatedBy: [" "]).map { $0 }
let (s1, a) = (inp[0], Int(inp[1])!)
let result = String(repeating: s1, count: a)
print(result)
문자열 반복 메서드로 구현했다.
https://developer.apple.com/documentation/swift/string/init(repeating:count:)-23xjt
String(repeating: "문자열", count: a)
4. 영어 알파벳으로 이루어진 문자열 str이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요.
제한사항
- 1 ≤ str의 길이 ≤ 20
- str은 알파벳으로 이루어진 문자열입니다.
입출력 예
입력 #1
aBcDeFg
출력 #1
AbCdEfG
제출 답안
import Foundation
// 입력받은 값 s1
let s1 = readLine()!
// 결과를 저장할 빈 문자열 변수 초기화
var result = ""
// 문자열의 문자를 순차적으로 처리
for char in s1 {
// 문자가 소문자일 경우
if char.isLowercase {
// 소문자를 대문자로 변환하여 result에 추가
result += char.uppercased()
} else {
// 대문자를 소문자로 변환하여 result에 추가
result += char.lowercased()
}
}
print(result)
https://developer.apple.com/documentation/swift/character/uppercased()/
https://developer.apple.com/documentation/swift/character/lowercased()
https://developer.apple.com/documentation/swift/character/islowercase
5. 다음과 같이 출력하도록 코드를 작성해 주세요.
출력 예시
!@#$%^&*(\'"<>?:;
제출 답안
import Foundation
print("!@#$%^&*(\\'\"<>?:;")
\를 사용해서 특수 문자를 이스케이프 할 수 있다.
\\는 백슬래시 출력
\'는 작은따옴표 출력
\" 는 큰 따옴표 출력
반응형
'프로그래머스 기초문제' 카테고리의 다른 글
[프로그래머스 기초문제] Day 5 (0) | 2025.01.09 |
---|---|
[프로그래머스 기초문제] Day 4 (0) | 2025.01.07 |
[프로그래머스 기초문제] Day 3 (0) | 2025.01.06 |
[프로그래머스 기초문제] Day 2 (1) | 2025.01.03 |