Algorithm/Do it

[자료구조와 함께 배우는 알고리즘 입문 - C언어 편] 1장 기본 알고리즘 연습문제 답안 p.40

Bonita SY 2019. 2. 23. 10:44
728x90
반응형

Q16.  직각 이등변 삼각형을 출력하는 부분을 아래와 같은 형식의 함수로 작성하세요.


void triangleLB(int n);


또 왼쪽 위, 오른쪽 위, 오른쪽 아래가 직각인 이등변 삼각형을 출려하는 함수를 작성하세요.


void triangleLU(int n);

void triangleRB(int n);

void triangleRU(int n);

#include <stdio.h>


void triangleLB(int n);

void triangleLU(int n);

void triangleRB(int n);

void triangleRU(int n);


int main(void)

{

        int n;

        do {

                printf("몇 단 삼각형입니까? : ");

                scanf("%d", &n);

        } while(n <= 0);


        triangleLB(n);

        triangleLU(n);

        triangleRU(n);

        triangleRB(n);

        return 0;

}


void triangleLB(int n)

{

        int i, j;

        for(i=1; i<=n; i++) {

                for(j=1; j<=i; j++) {

                        putchar('*');

                }

                putchar('\n');

        }

}


void triangleLU(int n)

{

        int i, j;

        for(i=n; i>=1; i--) {

                for(j=1; j<=i; j++) {

                        putchar('*');

                }

                putchar('\n');

        }

}



void triangleRB(int n)

{

        int i, j;

        for(i=1; i<=n; i++) {

                for(j=n; j<=(n-i); j++) {

                        putchar(' ');

                }

                for(j=1; j<=i; j++) {

                        putchar('*');

                }

                putchar('\n');

        }

}


void triangleRU(int n)

{

        int i, j;

        for(i=n; i>=1; i--) {

                for(j=1; j<=(n-i); j++) {

                        putchar(' ');

                }

                for(j=1; j<=i; j++) {

                        putchar('*');

                }

                putchar('\n');

        }

}


출력 결과


sy@sy:~/doit/1$ ./prac16

몇 단 삼각형입니까? : 3

*

**

***

***

**

*

***

 **

  *

*

**

***


728x90
반응형