소개글
수학 함수를 입력하면 그에 대한 그래프를 자동으로 그려주는 프로그램을 C언어로 한번 짜보았습니다. 어떠한 수학함수를 입력하던 가능하며예를 들어 4*cos(x)^2 -3*sin(x)^4 + 5*log(x)^4 + 2*tan(x)^2 + exp(x)^3 + sprt(x)
등과 같은 복잡한 함수도 그래프로 나타낼 수 있습니다.
그리고 출력할 그래프의 x축, y축 범위를 정하고 x축, y축의 간격도 설정하여 얼마나 그래프를 크게 나타낼 것인지 얼마나 그래프를 자세하게 나타낼 것인지도 설정할수 있습니다.
함수 각각을 double linked list로 구현하였습니다.
컴퓨터 프로그래밍 시간에 몇일 밤을 새어 프로그래밍을 하여 칭찬을 받고 A+를 받았던 프로그램입니다. 공부하시는데 많은 도움 되길 바랍니다.
컴파일 실행환경
헤더파일 (header.h) 과 소스파일 (calculate.c, graph.c, input.c, main.c)의 5개의 파일을 비주얼 스튜디오로 한꺼번에 컴파일 시킵니다.그러면 실행화면이 뜨는데 여기서 함수를 입력시키면 출력파일로 그 함수의 그래프가 결과로 나옵니다.
본문내용
사용자로부터 아래와 같은 형태의 임의의 x에 대한 함수를 입력 받아 함수식을 만든 후, 파일에 plotting하는 프로그램을 작성하시오. 단, 함수의 형태는 다음과 같이 일정한 형식을 가진다고 한다.y = a * A(i) + b * B (j) + c * C(k) + …
예) y = 3x3 + 2sin(x)2 + 4log(x)1 , y = x2 + 2x – 5 , …
1) A, B, C.. 에는 다음과 같은 형태의 식만 입력된다.(제한사항)
예) x, sin(x), cos(x), log(x), ln(x), exp(x) , sqrt(x)
2) a,b,c,...에는 정수 또는 실수가 입력된다고 가정한다. 예) .., -1, 0, 1, … or 0.5,...
3) i,j,k, ...에는 0 또는 양의 정수만 입력된다고 가정한다. 예) 0, 1, 2, 3 …
< 입력 형식 >
① i번째 함수식의 항의 개수를 입력 받는다.
② 항의 개수만큼 항의 계수, 함수, 지수를 차례로 받는다.
③ 항 사이의 연산자는 다음 항의 계수의 부호로 결정한다.
예) x2 – 1의 경우 두번째 항의 계수, 식, 지수는 –1, x, 0이다.
④ 함수에 대한 다항식을 다 입력 받으면 함수 그래프를 그리기 위한 좌표계 값을 입력 받는다
x의 값 범위(최소, 최대), y값의 범위(최소, 최대), x축의 간격, y축의 간격
축의 간격은 정수 또는 소수점의 형태로 받는다. 예) 1, 2, .. or 0.1, 0.5, …
⑤ ①~④의 내용을 한번에 받도록 한다. 순서는 아래와 같다.
항의 개수
첫번째 항의 계수, 함수, 지수
두번째 항의 계수, 함수, 지수
세번째 항의 계수, 함수, 지수
그래프를 그리기 위한 좌표계의 값 (x범위,y범위,x간격,y간격)
⑥ 좌표계 값을 입력 받고 나면 내부적으로 그래프를 그리면서‘Drawing Graph’메시지를 출력해주고 다음 함수식을 받을 것인지 묻는다. yes이면 ①~④를 다시 반복한다.
압축파일 내 파일목록
5th.JPG
5th_doc.doc
과제5.doc
실행파일.exe
소스파일/calculate.c
소스파일/graph.c
소스파일/header.h
소스파일/input.c
소스파일/main.c
5th_doc.doc
과제5.doc
실행파일.exe
소스파일/calculate.c
소스파일/graph.c
소스파일/header.h
소스파일/input.c
소스파일/main.c
참고 자료
없음프로그램소스 연관자료
이 자료와 함께 구매한 자료
- [프로그래밍] 성적그래프프로그램 2페이지
- 이차방저식의 해를 구하는 프로그램 0페이지
- 비주얼베이직(C++)을 이용한 비오사바르법칙 유도 설명 4페이지
- 정보통신 전공자를 위한 C소스 0페이지
- [C프로그래밍]호텔 요금 정산 프로그램 30페이지