ABOUT ME

포소니는 나의 하루이자 누군가의 공감입니다. 조용히 머물러도 좋고, 가볍게 이야기를 남겨도 좋아요. 당신의 일상도, 이곳에 스며들길 바랍니다.

Today
Yesterday
Total
  • 여러가지 별모양 찍기
    카테고리 없음 2013. 2. 20. 01:47
    반응형

    #include <iostream>
    using namespace  std;
    int main(void)
    {
    cout<<":: 여러가지 모양의 별찍기 과제 ::"<<endl;
    -- *
    **
    ***
    ****
    --
    for(int i=0;i<4;i++)
    {
    for (int j=0;j<i+1;j++)
    {
    cout<<"*";
    }
    cout<<endl;
    }
    cout<<endl;cout<<endl;
    --   *
     **
        ***
       ****
    --
    for(int i=0;i<4;i++)//4행의 별을 찍기위해 4번 for 문 돌림
    {
    for (int j=0;j<4-i;j++)//4-i 번만큼 공백을 주기위하여
    {
    cout<<" ";
    }
    for (int k=0;k<i+1;k++)
    {
    cout<<"*";
    }
    cout<<endl;
    }
    cout<<endl;cout<<endl;
    -- 
    ****
    ***
    **
    *
    --
    for (int i=0;i<4;i++)
    {
    for (int j=0;j<4-i;j++)
    {
    cout<<"*";
    }
    cout<<endl;
    }
    cout<<endl;cout<<endl;
      --
    ****
    ***
    **
    *
    --
    for (int i=0;i<4;i++)
    {
    for (int j=0;j<i;j++)//공백
    {
    cout<<" ";
    }
    for (int j=0;j<4-i;j++)//별을 찍는다.
    {
    cout<<"*";
    }
    cout<<endl;
    }
    cout<<endl;cout<<endl;
    --
          *
     ***
    *****
       *******
    --
    -- i값이 1씩 증가시 j 값은 2배씩 증가하여야한다.--
    for(int i=0;i<4;i++)
    {
    for(int j=4-1;j>i;j--)
    {
    cout<<" ";
    }
    for (int k=0;k<(2*i)+1;k++)
    {
    cout<<"*";
    }
    cout<<endl;
    }
    cout<<endl;
    ////마름모 출력
    //--**********************************************************************--
    //-- 마름모를 출력하기 위해서는 삼각형을 두번에 나눠서 출력한다고 
    //생각하면 된다.
    //                                                                     --
    //--**********************************************************************--
    //i는 출력할 공백의 개수이며 m은 별의 개수이다.
    int m=1;
    for (int i=5;i>=0;i--, m +=2)
    {
    for (int j=0;j<i;j++)//i값에 따라 공백 표시
    {
    cout<<" ";
    }
    for (int k=0;k<m;k++)//공백에 이어 별을 m의 값만큼 출력한다..
    {
    cout<<"*";
    }
    cout<<endl;
    }
    m -=4;//m의 값을 4만큼 빼서 별의 개수를 줄인다.**제일처음의 for 문에서 m이 2만큼 증가한후 for 문이 종료되기 때문에 4만큼 빼는것이다.
    for (int i=1;i<=5;i++,m -=2)//for문에서의 i의 값이 1 씩 증가하며,m의 값이 2씩 감소,i는 출력할 공백의 개수이며 ,m은 별의 개수
    {
    for (int j=0;j<i;j++)//i값에 따라 공백을 출력
    {
    cout<<" ";
    }
    for (int k=0;k<m;k++)//공백에 이어 별을 m의 값만큼 출력함
    {
    cout<<"*";
    }
    cout<<endl;
    }
    return 0;
    }

    반응형
Designed by Tistory.