문제
첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제
입력
첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
출력
첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.
예제 입력 1
5
예제 출력 1
*
**
***
****
*****
나는 처음에 아래와 같이 제출을 했다
const fs = require('fs')
const inp = fs.readFileSync('/dev/stdin').toString()
const n = Number(inp)
for(let i = 0; i<n; i++){
for(let j = 0; j<=i; j++){
console.log('*')
}
console.log('\n')
}
그런데 자꾸 틀렸다고 나왔다
아무리 보고 또봐도 맞는데 도대체 뭐가 문제인지 알 수가 없었다
어쩔수 없이 검색을 했다
근데 모든 사람이 바로 console.log를 찍지않고
빈 값을 만들어 그 안에 +=을 통하여 값을 넣고
마지막에 한번에 그 값을 찍었다
그래서 나도 그렇게 해보았다
let fs = require('fs');
let inp = fs.readFileSync('/dev/stdin').toString()
let n = Number(inp)
let result = ''
for(let i = 0; i<n; i++){
for(let j = 0; j<=i; j++){
result +='*'
}
result+='\n'
}
console.log(result)
그랬더니 맞았다고 나왔다
내가 생각해보는건데 두개의 결과는 똑같지만 처음제출한건
console.log 즉 출력을 여러번 해서 만들어내는 것이고
빈 값을 만들어 한번에 하는것은 출력을 한번에 하는 것인데
첫번째 출력값이 결과값과 다르니까 틀리다고 한 것 같다
내 생각이 맞는지는 모르겠지만 그런거같아서 앞으로는 이런식으로 코드를 짜야겠다