Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript로 다이아몬드 모양 출력하기 – 커스텀 함수 구현 방법

JavaScript에서는 직접 함수를 작성하여 주어진 크기 값에 맞는 다이아몬드 모양을 콘솔에 출력할 수 있습니다. 중첩 반복문을 활용하면 별(*) 문자로 이루어진 다이아몬드를 손쉽게 그릴 수 있는데요, 아래 예제 코드를 통해 구현 방법을 살펴보겠습니다.

예제 코드

다음 코드는 createDimondShape라는 이름의 함수를 정의하고, 인자로 전달된 크기만큼 다이아몬드 모양을 출력합니다.

function createDimondShape(size){
   for(var i=1;i<=size;i++){
      for(var s=size-1;s>=i;s--){
         process.stdout.write(" ");
      }
      for(var j=1;j<=i;j++){
         process.stdout.write("* ")
      }
      console.log();
   }
   if(i==size+1){
      for(var i=1;i<=size-1;i++){
         for(var s=1;s<=i;s++){
            process.stdout.write(" ");
         }
         for(j=i;j<=size-1;j++){
            process.stdout.write("* ");
         }
         console.log();
      }
   }
}
createDimondShape(9);

코드 동작 원리

이 함수는 두 단계로 나뉘어 동작합니다. 첫 번째 반복문은 공백과 별의 개수를 조절하며 다이아몬드의 윗부분(정방향 피라미드)을 그립니다. 이후 두 번째 반복문은 반대로 공백을 늘리고 별을 줄여가며 아랫부분(역방향 피라미드)을 완성해 전체적인 다이아몬드 형태를 만듭니다. Node.js 환경에서 줄바꿈 없이 출력하기 위해 process.stdout.write()를 사용한 점도 눈여겨볼 만합니다.

프로그램 실행 방법

위 프로그램을 실행하려면 터미널에서 다음 명령어를 입력합니다.

node fileName.js

여기서는 파일 이름이 demo58.js이므로 아래와 같이 실행하면 됩니다.

node demo58.js

출력 결과

위 코드를 실행하면 다음과 같이 크기 9짜리 다이아몬드 모양이 콘솔에 출력됩니다.

PS C:\Users\Amit\JavaScript-code> node demo58.js
           *
          * *
         * * *
        * * * *
       * * * * *
      * * * * * *
     * * * * * * *
    * * * * * * * *
   * * * * * * * * *
    * * * * * * * *
     * * * * * * *
      * * * * * *
       * * * * *
        * * * *
         * * *
          * *
           *

이처럼 반복문의 범위와 공백·별의 개수 규칙만 잘 조절하면, 원하는 크기의 다이아몬드 패턴을 자유롭게 출력할 수 있습니다. 인자 값만 바꾸면 다양한 크기의 패턴을 실험해 보세요.