일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 티스토리
- Tips프로그래밍강좌
- Tips강좌
- 프로그래밍
- Windows
- tipssoft
- 포인터
- Kotlin
- Visual Studio
- VS ERROR
- CS
- 이지스퍼블리싱
- Desktop
- 김성엽
- 지식나눔강좌
- Win32
- c
- c++
- Programming
- 함수
- Javascript
- 문법
- 연산자
- 백준
- 리뷰
- 배열
- 알고리즘
- c#
- Direct2D
- doit코틀린프로그래밍
Archives
- Yesterday
- Today
- Total
F.R.I.D.A.Y.
수식으로 하트그리기 본문
반응형
갤러리에 사진을 찾아보다가 교수님이 바라는 과제물과 학생들 수준에 관한 자료가 있길래 보니 하트 그리는 프로그램이 있었다.
아무 생각없이 사진에 있는 코드를 복사해보았다.
#define _USE_MATH_DEFINES //math.h에 define으로 선언된 상수를 이용가능하도록 선언함. M_PI(파이값)
#include <stdio.h>
#include <math.h>
int main(void) {
double si = 0;
for (int i = 0; i <= 270; i += 20) {
si = sin((M_PI * i) / 180);
for (int x = 0; x < (-si + 1) * 10; x++) {
printf(" ");
}
if (i <= 90) {
for (int x = 0; x < 2 * (int)(si * 10); x++) {
printf("*");
}
for (int x = 0; x < ((-si + 1) * 10); x++) {
printf(" ");
} //상반 왼쪽 반구를 출력하는데 사용한다.
for (int x = 0; x < (-si + 1) * 10; x++) {
printf(" ");
}
for (int x = 0; x < 2 * (int)(si * 10); x++) {
printf("*");
} //상반 오른쪽 반구를 출력하는데 사용한다.
}
else {
si = si + 1;
for (int x = 0; x < 2 * (int)(si * 10); x++) {
printf("*");
}//하트 아랫부분(산이 뒤집힌 모양)을 출력한다.
}
printf("\n");
}
return 0;
}
Result:
위 코드를 복붙하면 사진과같은 결과를 얻지만, 일반적으로 위 코드는 보기도 힘들 뿐드러 가독성이 낮아서 어떤 도형이 그려지는지도 알 수 없다. 고로
#include <stdio.h>
int main(void) {
printf("\n");
printf(" ****** ******\n");
printf(" ************ ************\n");
printf(" **************** ****************\n");
printf(" ****************** ******************\n");
printf(" **************************************\n");
printf(" ************************************\n");
printf(" ********************************\n");
printf(" **************************\n");
printf(" ********************\n");
printf(" ************\n");
printf(" ******\n");
printf(" **\n");
return 0;
}
위 코드처럼 작성하는게 더 낫다. 참고로 고정폭 폰트를 사용하는 것을 추천한다. 필자가 올리는 콘솔 이미지도 모두 D2Coding을 이용해 고정폭 폰트다.
728x90
반응형
'DEV > C C++' 카테고리의 다른 글
Q 삼각형 넓이 구하기 (0) | 2018.04.15 |
---|---|
Q 공배수 출력 (0) | 2018.04.15 |
전처리 상수 VS 일반 상수 (0) | 2018.04.14 |
바둑 죽은 돌 개수 구하기 for C (0) | 2018.04.14 |
값 받아서 그래프 그리기 (0) | 2018.04.13 |
Comments