VesselWheel

직사각형 별찍기 in Swift 본문

Coding Test Practice in Swift

직사각형 별찍기 in Swift

JasonYang 2024. 1. 18. 06:38

풀이

import Foundation

let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! }
let (a, b) = (n[0], n[1])

for _ in 0..<b {
    print(Array(repeating: "*", count: a).joined())
}

 

해석

readLine() 함수를 사용하여 사용자로부터 입력을 받습니다. 입력은 공백을 기준으로 분리되어 배열로 저장됩니다.

이후 map 함수를 사용하여 배열의 각 요소를 정수로 변환합니다.

변수 n은 입력된 두 개의 정수를 담고 있습니다. n[0]에는 첫 번째 정수가, n[1]에는 두 번째 정수가 저장됩니다. 이는 각각 직사각형의 가로와 세로의 길이를 의미합니다.

그 다음, 반복문을 통해 세로의 길이인 b만큼 반복합니다. 반복문 내부에서는 Array(repeating: "*", count: a)를 사용하여 가로의 길이인 a만큼 별(*)로 이루어진 배열을 생성합니다.

이후 joined() 메서드를 통해 배열의 요소들을 하나의 문자열로 연결하여 출력합니다.

따라서 이 코드는 입력으로 받은 가로와 세로의 길이에 따라 직사각형 모양으로 별을 출력됩니다. 

 

'Coding Test Practice in Swift' 카테고리의 다른 글

3진법 뒤집기  (1) 2024.02.02
최대공약수와 최소공배수(feat. 유클리드 호제법)  (1) 2024.01.26
직사각형 별찍기  (1) 2023.12.27
NS type  (0) 2023.12.22
행렬의 덧셈  (0) 2023.12.22