[Swift] Rotating String 90 Degrees - Programmers Lv.0 (181945)

Problem: 문자열 str이 주어집니다. 문자열을 시계방향으로 90도 돌려서 아래 입출력 예와 같이 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181945 Constraints: 1 ≤ str의 길이 ≤ 10 Solution: readLine()?.forEach { print($0) } 가로로 제시된 문자열을 세로로 하나씩 출력하면 되는 문제입니다. 문자열을 하나하나 순회하며 출력해주면 됩니다. 저는 forEach 문법을 사용해서 문자열을 하나씩 출력해 주었습니다. 아직 Swift 문법이 어색하다면 아래와 같이 for in 문을 사용하여 해결할 수도 있습니다. let line = readLine()! for character in line { print(character) } ]( ...

June 22, 2023 · 1 min · Sobamemil

[Swift] Concatenating and Printing Strings - Programmers Lv.0 (181946)

Problem: 두 개의 문자열 str1, str2가 공백으로 구분되어 입력으로 주어집니다. 입출력 예와 같이 str1과 str2을 이어서 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181946 Constraints: 1 ≤ str1, str2의 길이 ≤ 10 Solution: print(readLine()!.components(separatedBy: [" "]).joined().replacingOccurrences(of: " ", with: "")) 두 문자열 사이의 공백을 제거하고 출력하면 되는 문제입니다. 방법은 아주 많겠지만 한 줄로 해결해 보았습니다. swift에서는 replacingOccurrences(of:with:)를 사용해서 of 위치의 문자열을 with 문자열로 쉽게 변경할 수 있습니다. ](

June 20, 2023 · 1 min · Sobamemil

[Swift] Printing Addition Equation - Programmers Lv.0 (181947)

Problem: Given two integers a and b, write code to print the equation format below. a + b = c https://school.programmers.co.kr/learn/courses/30/lessons/181947 Constraints: 1 ≤ a, b ≤ 100 Solution: let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! } let (a, b) = (n[0], n[1]) let result = a + b print("\(a) + \(b) = \(result)") // 또는 // print(a, "+", b, "=", a + b) 문자열을 포맷에 맞춰 출력하는 문제입니다. 문자열에 직접 ()을 사용해서 변수를 출력할 수도 있고, 아래 주석처럼 콤마(,)로 나눠서 출력할 수도 있습니다. ...

June 20, 2023 · 1 min · Sobamemil

[Swift] Printing Special Characters - Programmers Lv.0 (181948)

Problem: 다음과 같이 출력하도록 코드를 작성해 주세요. !@#$%^&*(\'"<>?:; https://school.programmers.co.kr/learn/courses/30/lessons/181948 Solution: print(#"!@#$%^&*(\'"<>?:;"#) // 또는 // print("!@#$%^&*(\\'\"<>?:;") swift에서는 특수문자를 출력하는 데 여러 방법이 있습니다. 그 중 문자열 앞 뒤로 # 을 사용하면 특수문자를 그대로 출력합니다. 또는 아래 주석처럼 \ 이나 " 처럼 이미 키워드로 사용하고 있는 특수문자들은 앞에 \ 를 하나 붙여주면 특수문자가 문자열 그대로 출력됩니다. ](

June 19, 2023 · 1 min · Sobamemil

[Swift] Swapping Upper and Lowercase - Programmers Lv.0 (181949)

Problem: 영어 알파벳으로 이루어진 문자열 str이 주어집니다. 각 알파벳을 대문자는 소문자로 소문자는 대문자로 변환해서 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181949 Constraints: 1 ≤ str의 길이 ≤ 20 str은 알파벳으로 이루어진 문자열입니다. Solution: let line = readLine()! let resultString = line.map { character in if character.isLowercase { return character.uppercased() } else { return character.lowercased() } }.joined() print(resultString) // 또는 // print(readLine()?.map { $0.isLowercase ? $0.uppercased() : $0.lowercased() }.joined() ?? "") 입력 받은 각 문자 하나하나가 대문자인지 소문자인지 판단해서 반대로 출력하면 되는 문제입니다. ...

June 19, 2023 · 1 min · Sobamemil

[Swift] Printing Repeated Strings - Programmers Lv.0 (181950)

Problem: 문자열 str과 정수 n이 주어집니다. str이 n번 반복된 문자열을 만들어 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181950 Constraints: 1 ≤ str의 길이 ≤ 10 1 ≤ n ≤ 5 Solution: let inp = readLine()!.components(separatedBy: [" "]).map { $0 } let (s1, a) = (inp[0], Int(inp[1])!) let resultString: String = { var string: String = "" for _ in 0..<a { string += s1 } return string }() print(resultString) // 또는 // let resultString = String(repeating: s1, count: a) // print(resultString) 문자열을 n 번 반복해서 이어 붙이면 되는 문제입니다. ...

June 19, 2023 · 1 min · Sobamemil

[Swift] Printing a and b - Programmers Lv.0 (181951)

Problem: 정수 a와 b가 주어집니다. 각 수를 입력받아 입출력 예와 같은 형식으로 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181951 Constraints: -100,000 ≤ a, b ≤ 100,000 Solution: let n = readLine()!.components(separatedBy: [" "]) let (a, b) = (n[0], n[1]) print("a = \(a)\nb = \(b)") // 또는 // print("a =", a) // print("b =", b) 두 가지의 정수를 공백 기준으로 나눈 후, 형식에 맞게 출력 해주면 되는 문제입니다. 출력은 아주 다양한 방법으로 할 수 있습니다 ~ ...

June 18, 2023 · 1 min · Sobamemil

[Swift] Printing a String - Programmers Lv.0 (181952)

Problem: 문자열 str이 주어질 때, str을 출력하는 코드를 작성해 보세요. https://school.programmers.co.kr/learn/courses/30/lessons/181952 Constraints: 1 ≤ str의 길이 ≤ 1,000,000 str에는 공백이 없으며, 첫째 줄에 한 줄로만 주어집니다. Solution: 입력 받은 문자열을 그대로 출력해주면 되는 문제입니다. print(readLine() ?? "") readLine 함수는 optional을 return 하므로 ?? 연산자(nil 병합 연산자 / coalescing operator)를 사용해 줍니다. ](

June 18, 2023 · 1 min · Sobamemil

C++ Programming Ch.5 Exercise 11 Solution

Problem: 책의 이름과 가격을 저장하는 다음 Book 클래스에 대해 물음에 답하여라. 1 2 3 4 5 6 7 8 9 class Book { char *title; // 제목 문자열 int price; // 가격 public: Book(const char* title, int price); ~Book(); void set(char* title, int price); void show() { cout << title << ' ' << price << "원" << endl; } }; (1) Book 클래스의 생성자, 소멸자, set() 함수를 작성하라. set() 함수는 멤버 변수 title에 할당된 메모리가 있으면 먼저 반환한다. 그러고 나서 새로운 메모리를 할당받고 이곳에 매개 변수로 전달받은 책이름을 저장한다. ...

March 5, 2020 · 3 min · Sobamemil

C++ Programming Ch.5 Exercise 10 Solution

Problem: 참조를 리턴하는 코드를 작성해보자. 다음 코드와 Execution Result를 참고하여 append() 함수를 작성하고 전체 프로그램을 완성하라. append()는 Buffer 객체에 문자열을 추가하고 Buffer 객체에 대한 참조를 반환하는 함수이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 class Buffer{ string text; public: Buffer(string text) { this->text = text; } void add(string next) { text += next; } // text에 next 문자열 덧붙이기 void print() { cout << text << endl; } }; int main() { Buffer buf("Hello"); Buffer& temp = append(buf, "Guys"); // buf의 문자열에 "Guys" 덧붙임 temp.print(); // "HelloGuys" 출력 buf.print(); // "HelloGuys" 출력 } Execution Result: ...

March 5, 2020 · 1 min · Sobamemil