본문 바로가기

Algorithm

별삼각형 알고리즘(반복문)1

C언어에서 반복문을 공부하다가 보면 꼭 나오는 문제가 존재 한다.
별 삼각형 만들기라는 문제로 여러 가지 형태가 나오지만 나는
간단한 형태 9가지만 작성해 보았다. 
여기에 올린 소스는 가장 무난하게 작성 한 것으로 내가 할 수 있는 최적의 방법이다.
하지만 다른 분들에게는 최적이 아닐 수도 있을 것이다.
그러니 어쩌다가 이 글을 보게 되면 조언 정도를 해 주리라 믿겠습니다~^^

/**********************************************************************************

    제  목 : 별 삼각형 알고리즘1                                                                               
    작성자 : 배기만                                                                                                
    날  짜 : 2009. 7. 27                                                                                             
    방  법 : 별 갯수의 최대가 5일때                                                                           
             *                                                                                                           
             * *                                                                                                         
             * * *                                                                                                      
             * * * *                                                                                                    
             * * * * *                                                                                                  
            이런식으로 나타나도록 함                                                                          

**********************************************************************************/

#include<stdio.h>
#define MAX 5

void main()
{
 int i, j;
 

 for(i = 0; i < MAX; i++)
 {
  for(j = 0; j <= i; j++)
  {
   printf("* ");
  }
  printf("\n");
 }

}

/**********************************************************************************

    제  목 : 별 삼각형 알고리즘2                                                 
    작성자 : 배기만                                                              
    날  짜 : 2009. 7. 27                                                          
    방  법 : 별 갯수의 최대가 5일때                                         
                          *                                                           
                        * *                                                           
                      * * *                                                          
                    * * * *                                                          
                  * * * * *                                                          
            이런식으로 나타나도록 함                                    

**********************************************************************************/

#include<stdio.h>
#define MAX 5

void main()
{
 int i, j;
 int count = MAX - 1;
 

 for(i = 0; i < MAX; i++)
 {
  for(j = 0; j < MAX; j++)
  {
            if(j >= count)
   {
    printf("* ");
   }
   else
   {
    printf("  ");
   }
  }
  count--;
  printf("\n");
 }

}


/**********************************************************************************

    제  목 : 별 삼각형 알고리즘3                                                 
    작성자 : 배기만                                                              
    날  짜 : 2009. 7. 27                                                         
    방  법 : 별 갯수의 최대가 5일때                                              
                  * * * * *                                                           
                    * * * *                                                          
                      * * *                                                           
                        * *                                                           
                          *                                                           
            이런식으로 나타나도록 함                                            

**********************************************************************************/

#include<stdio.h>
#define MAX 5

void main()
{
 int i, j;
 int count = 0;
 

 for(i = 0; i < MAX; i++)
 {
  for(j = 0; j < MAX; j++)
  {
            if(j >= count)
   {
    printf("* ");
   }
   else
   {
    printf("  ");
   }
  }
  count++;
  printf("\n");
 }

}