본문 바로가기
Programming/JavaScript

[JavaScript] 중첩 반복문 사용하는 피라미드 문제 모음(별찍기)

by 노 코딩 노 라이프 2023. 1. 20.

중첩 반복문을 이용하여 피라미드 문제 풀어보기

문제 보고 답 보기전에 먼저 풀어 보세요!

 

#문제1

왼쪽에서 오른쪽으로 별이 하나씩 증가하는 모양

*
**
***
****
*****
******
*******
********
*********

 

- 코드

더보기
//변수 선언
let output = ''
//중첩 반복문
for (let i = 1; i < 10; i++) {
    for (let j = 0; j < i; j++) {
        output += '*'
    }
    output += '\n'
}
//출력
console.log(output)

 

 

#문제2

왼쪽에서 오른쪽으로 별이 두개씩 증가하는 모양

*
***
*****
*******
*********
***********
*************

 

- 코드

더보기
let output = ''
for(let i = 0; i < 7; i++){
    for(let j = 0; j < (i*2 + 1); j++) {
        output += '*'
    }
    output += '\n'
}
console.log(output)

 

 

#문제3 

앞에 한 칸 띄우고 왼쪽에서 오른쪽으로 별이 하나씩 증가하는 모양

 *
 ***
 *****
 *******
 *********
 ***********
 *************

 

- 코드

더보기
let output = ''
for(let i = 0; i < 7; i++){
    output += ' '
    for(let j = 0; j < (i*2 + 1); j++) {
        output += '*'
    }
    output += '\n'
}
console.log(output)

 

 

#문제4

앞에 빈 칸이 하나씩 증가하고 왼쪽에서 오른쪽으로 별이 하나씩 증가하는 모양

 *
  ***
   *****
    *******
     *********
      ***********
       *************

 

- 코드

더보기
let output = ''
for(let i = 0; i < 7; i++){
    for (let k = 0; k < i + 1; k++) {
        output += ' '
    }
    for(let j = 0; j < (i*2 + 1); j++) {
        output += '*'
    }
    output += '\n'
}
console.log(output)

 

 

#문제5

피라미드

              *
             ***
            *****
           *******
          *********
         ***********
        *************
       ***************
      *****************
     *******************
    *********************
   ***********************
  *************************
 ***************************

 

- 코드

더보기
let output = ''
for(let i = 1; i < 15; i++){
    for (let k = 15; k > i; k--) {
        output += ' '
    }
    for(let j = 0; j < (i*2 - 1); j++) {
        output += '*'
    }
    output += '\n'
}
console.log(output)

 

 

#문제6

다이아몬드 모양 피라미드

    *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *

 

- 코드

더보기
let output = ''
const size = 5

for(let i = 1; i <= size; i++){
    for (let j = size; j > i; j--) {
        output += ' '
    }
    for(let k = 0; k < (i*2 - 1); k++) {
        output += '*'
    }
    output += '\n'
}
for(let i = size - 1; i > 0; i--){
    for (let j = size; j > i; j--) {
        output += ' '
    }
    for(let k = 0; k < (i*2 - 1); k++) {
        output += '*'
    }
    output += '\n'
}
console.log(output)