Swift 언어로 프로그래머스 알고리즘 문제를 풀어보려고 한다.
이유는 간단하다.
Swift
라는 언어를 사용하고 있는데 익숙해지기 위함,프로그래머스 기준으로 완전 기초단계부터 공부 풀어보는 중이라서 지금부터 몇 개의 Swift관련 코딩테스트 글은 정말 쉬운 문제로 구성이 되어있다.
가장 중요한 것, 문법적 레퍼런스는 구글링을 당연히 하지만, 절대 절대 다른 사람이 푼 것은 레퍼런스로 참조하지 않는다.
문자열 str이 주어질 때, str을 출력하는 코드를 작성해 보세요.
import Foundation
let s1 = readLine()!
print(s1)
정수 a와 b가 주어집니다. 각 수를 입력받아 입출력 예와 같은 형식으로 출력하는 코드를 작성해 보세요.
import Foundation
let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! }
let (a, b) = (n[0], n[1])
print("a = \(a)")
print("b = \(b)")
문자열 str과 정수 n이 주어집니다.
str이 n번 반복된 문자열을 만들어 출력하는 코드를 작성해 보세요.
import Foundation
let inp = readLine()!.components(separatedBy: [" "]).map { $0 }
let (s1, a) = (inp[0], Int(inp[1])!)
for i in 0..<a {
print(s1, terminator: "")
}
영어 알파벳으로 이루어진 문자열 str이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요.
import Foundation
let s1 = readLine()!
extension String {
subscript(index: Int) -> Character {
return self[String.Index(encodedOffset: index)]
}
}
func transformString(str: String) {
var returnString = ""
for i in 0..<str.count {
if str[i].asciiValue! >= 65 && str[i].asciiValue! <= 90 {
returnString += str[i].lowercased()
} else {
returnString += str[i].uppercased()
}
}
print(returnString)
}
transformString(str: s1)
다음과 같이 출력하도록 코드를 작성해 주세요.
import Foundation
func specialPrint() {
print(#"!@#$%^&*(\'"<>?:;"#)
}
specialPrint()
두 정수 a, b가 주어질 때 다음과 같은 형태의 계산식을 출력하는 코드를 작성해 보세요.
import Foundation
let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! }
let (a, b) = (n[0], n[1])
func plusPrint(a: Int, b: Int) {
var result = a + b
print("\(a) + \(b) = \(result)")
}
plusPrint(a: a, b: b)
두 개의 문자열 str1, str2가 공백으로 구분되어 입력으로 주어집니다.
입출력 예와 같이 str1과 str2을 이어서 출력하는 코드를 작성해 보세요.
import Foundation
let inp = readLine()!.components(separatedBy: [" "]).map { $0 }
let (s1, s2) = (inp[0], inp[1])
func blankDelete(s1: String, s2: String) {
var str = s1 + s2
var value = str.split(separator: " ").joined()
print(value)
}
blankDelete(s1: s1, s2: s2)
문자열 str이 주어집니다.
문자열을 시계방향으로 90도 돌려서 아래 입출력 예와 같이 출력하는 코드를 작성해 보세요.
import Foundation
let s1 = readLine()!
s1.forEach {
print($0)
}
자연수 n이 입력으로 주어졌을 때 만약 n이 짝수이면 "n is even"을, 홀수이면 "n is odd"를 출력하는 코드를 작성해 보세요.
import Foundation
let a = Int(readLine()!)!
a % 2 == 1 ? print("\(a) is odd") : print("\(a) is even")
코딩테스트 문제를 풀고 나면 항상 공부해야 할 목록들을 정리하도록 한다.
공부해야 할 목록들은 원래 알았지만 헷갈리는 문법 및 코딩테스트를 하면서 알게된 문법들...