-
C언어 피라미드, 마름모 별찍기(for문 연습)코딩공부 2022. 4. 21. 17:49728x90반응형
C언어를 배우면 for문에서 무조건 나오는 피라미드와 마름모 별(*)찍기에 대해 글을 작성하였습니다.
여기서 사용되는 것은 이중 for문이며 간단한 덧셈 곱셈만 할 줄 안다면 만들 수 있습니다.
사각형 만들기
우선 이중 for문을 이용해 사각형을 먼저 만들어 보겠습니다.
#include <stdio.h> int main(void) { for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { printf("*"); } printf("\n"); } return 0; }
첫번째 for문은 몇번을 반복할 것인지를 나타내고 두번째 for문은 어떻게 별(*)을 찍을 것인지를 나타내는 것입니다.
사격형 만들기 결과
왼쪽으로 붙은 직각 삼각형 만들기
#include <stdio.h> int main(void) { for(int i = 0; i < 5; i++) { for(int j = 0; j <= i; j++) { printf("*"); } printf("\n"); } return 0; }
위에서 말한것과 같이 첫번째 for문은 반복할 횟수를 두번째 for문은 어떤 형태로 별(*)을 찍을지를 나타냅니다.
왼쪽으로 붙은 직각 삼각형 만들기 결과
피라미드 만들기
피라미드를 만들기 위해서는 별(*)이 1,3,5,7,9,... 이렇게 늘어나야합니다.
#include <stdio.h> int main(void) { for (int i = 0; i < 5; i++) { for (int j = i; j < 4; j++) { printf(" "); } for (int h = 0; h < i*2+1; h++) { printf("*"); } printf("\n"); } return 0; }
첫번째 for문은 반복할 횟수, 두번째 for문은 피라미드를 만들기 위한 빈공간을 만들기 위해, 세번째 for문은 실질적인 피라미드 모양의 별(*)을 나타냅니다.
피라미드 만들기 결과
마름모 만들기
마름모를 만드는 방법은 피라미드를 각각 반대로 만들어 주시면 됩니다.
#include <stdio.h> int main(void) { int num = 3;//아래 모양을 만들기 위한 변수 for (int i = 0; i < 5; i++) { for (int j = i; j < 4; j++) { printf(" "); } for (int h = 0; h < i*2+1; h++) { printf("*"); } printf("\n"); } //마름모 위 모양 완성 for (int a = 0; a < 4; a++) { for (int b = 0; b <= a; b++) { printf(" "); } for (int c = num*2+1; c > 0; c--) { printf("*"); } printf("\n"); num = num - 1; } //마름모 아래 모양 완성 return 0; }
마름모 만들기 결과
728x90반응형'코딩공부' 카테고리의 다른 글
[javascript] let과 var의 차이 그리고 호이스팅이란? (0) 2022.04.27 C언어 다이아몬드 키우기 게임 (2) 2022.04.22 C언어 고양이 뽑기 게임 만들기 (1) 2022.04.20 C언어 구조체(struct) 공부 (0) 2022.04.20 c언어 포인터 공부 (0) 2022.04.14