[C언어]전처리 명령어를 이용한 도형의 넓이, 부피, 겉넓이 구하기
- 최초 등록일
- 2007.04.22
- 최종 저작일
- 2007.04
- 11페이지/ 압축파일
- 가격 1,000원
소개글
1. 함수를 이용하여 자동차의 비용을 계산하는 프로그램
2. define을 이용하여 도형의 넓이, 부피, 겉넓이를 구하는 프로그램
3. 함수를 이용하여 음식의 영양을 계산하는 프로그램
1) 계산을 수행할 도형 결정
이번 문제에서는 몇 가지 계산을 결정해야 하는데 평면 또는 입체 도형에 관련되 것이어야 한다. 우선적으로 평면도형의 경우는 면적을 구하는 것을 할 수 있는데, 도형의 종류로는 사각형, 삼각형, 원으로 한다. 3차원 도형의 경우 세 개의 축을 이용하여 표면적, 부피를 구하는 계산을 할 수 있으며, 여기서는 삼각뿔, 육면체, 원뿔을 계산의 대상으로 설정하여 준다. 각 계산 방식은 사각형은 가로*세로, 삼각형은 가로*세로*1/2, 원은 지름*π로 면적을 구하며, 3차 도형의 부피는 삼각뿔은 밑면의 넓이* 높이 * 1/3, 육면체는 높이*밑면의 넓이, 원뿔은 밑면넓이*높이*1/3이 된다. 표면적은 육면체만 구하며 각 면의 넓이를 합한 결과가 될 것이다.
2) define의 사용 방식 결정
연습문제 7.4는 전처리 명령어를 이용해야 하므로 그 중 하나인 define을 이용하기로 한다. define은 매크로 기능을 하며 정의된 아래의 소스에 영향을 미친다. 예를 들어 define MAX 1을 정의하면 그 아래의 소스 부분에서는 MAX는 1로 인식되게 되는 것이다. define은 함수의 기능도 할 수 있는데 이번 문제에서는 그 기능을 사용한다. 따라서 넓이, 표면적, 부피를 구하는 함수를 모두 define을 이용하여 정의하여 주고, π의 경우도 define을 이용하여 3.14로 정의하여 준다. 또한 #을 이용한 문자열 인식 기능도 사용하여 본다.
(3) 알고리즘 구현
1) 간략한 알고리즘
위에서 검토한 문제해결 방식에 따라 알고리즘을 구현하면, 우선 define의 정의가 필요하다. π의 경우는 3.14로 정의 될 것이며, 넓이는 area(x), 부피는 volume(x), 표면적은 surface(x)로 정의하여 준다. main에서는 select 변수를 이용하여 어떠한 계산을 할 것인지를 선택하게 한 후 가로 또는 반지름에 해당하는 x를 받아오고, 세로에 해당하는 y를 받아온다. 3차원 도형의 경우 z값을 받아와 선택한 계산을 수행한다. 이와 같은 내용은 아래와 같이 간단하게 나타낼 수 있다.
ⅰ. 계산 할 도형 및 내용을 선택.
ⅱ. 가로 또는 반지름의 길이를 입력 받음.
ⅲ. 원이 아닌 경우 세로의 길이를 입력 받음.
ⅳ. 3차원 도형인 경우 높이를 입력 받음.
ⅴ. 넓이를 구하는 경우 area()를 이용하여 계산.
ⅵ. 부피를 구하는 경우 volume()을 이용하여 계산.
ⅶ. 표면적의 경우 surface()를 이용하여 계산.
2) 플로우 차트의 작성
위 알고리즘을 플로우 차트로 나타내면 아래와 같다.
컴파일 실행환경
C언어
압축파일 내 파일목록
HW62.dsw
HW62.ncb
HW62.plg
Session7.cpp
HW62.dsp
Session7.cpp.bak
HW62.opt
HW62.hwp
Debug/vc60.idb
Debug/vc60.pdb
Debug/HW62.pch
Debug/HW62.exe
Debug/HW62.pdb
Debug/HW62.ilk
Debug/Session7.obj
참고 자료
experiments in computer science - C version -