1일차 → 직사각형 별 찍기(.repeat())
배정 받은 문제를 생각 보다 빨리 풀어서 다른 분들의 문제로 풀어보기로 했습니다.
문제 설명
이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다.
별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력 해보세요.
제한사항
n과 m은 각각 1000 이하의 자연수입니다.
내가 푼 문제 풀이
process.stdin.setEncoding('utf8');
process.stdin.on('data', data => {
const n = data.split(" ");
const a = Number(n[0]), b = Number(n[1]);
let jStar = '' // 가로
let iStar = '' // 세로
for(let i = 0; i<b; i++){ // 세로
for(let j = 0; j<a; j++){ // 가로
jStar += '*'
// 반복문이 돌 때마다 가로의 *을 찍는다.
}
iStar += jStar+"\n"
// 반복문이 돌 때마다 세로의 *을 찍는다.
jStar = ''
// 줄바꿈이 되면 jStar는 ''로 만들어서
// 새롭게 *을 찍을 수 있도록 구현한다.
}
console.log(iStar)
});
다른 사람이 푼 문제 풀이
.repeat() 메소드(객체 안에 들어있는 함수)는 문자열을 반복한 값을 반환한다. (repeat : 반복하다)
(문법) -> 반복할 문자열.repeat(반복 횟수)
(예제) -> 'abc'.repeat(2) -> 'abcabc'
process.stdin.setEncoding('utf8');
process.stdin.on('data', data => {
const n = data.split(" ");
const a = Number(n[0]), b = Number(n[1]);
const star = '*'.repeat(a)
for(let i = 0; i < b; i++){
console.log(star)
}
});
https://www.codingfactory.net/10916
JavaScript / Object / String.repeat() / 문자열을 반복한 값을 반환하는 메서드
.repeat() .repeat() – 문자열을 반복한 값을 반환하는 메서드입니다. IE는 Edge부터 지원합니다. 문법 string.repeat( count ) 예제 'abc'.repeat( 2 ) abc를 두 번 반복한 abcabc를 반환합니다.
www.codingfactory.net
https://programmers.co.kr/learn/courses/30/lessons/12969
코딩테스트 연습 - 직사각형 별찍기
이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다. 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력해보세요. 제한 조건 n과 m은 각각 1000 이하인 자연수
programmers.co.kr