관리 메뉴

드럼치는 프로그래머

[M2S] 2009년 02월 17일 화요일 C언어 DailyQuiz 20 ( Final ) ( 다항식 덧셈 ) 본문

★─M2S Study/☆─09.01 Daily

[M2S] 2009년 02월 17일 화요일 C언어 DailyQuiz 20 ( Final ) ( 다항식 덧셈 )

드럼치는한동이 2009. 2. 17. 02:03
다항식 덧셈

[1] 과제의 목적

원형 연결 리스트로 표현된 두 다항식의 덧셈을 통해

1. 원형 연결 리스트의 삽입 삭제 연산에 대해 익히고

2. 가용 공간 리스트(vailable space list)의 운영에 대해 익힌다.

[2] 문제

두 개의 다항식을 키보드로부터 입력 받아

(1) 두 다항식에 대해 헤더 노드를 갖는 원형 연결 리스트를 생성하여 출력해 본다.

(2) 두 다항식의 덧셈을 수행하는 함수 호출 후 덧셈 결과를 출력한다.

(3) 제거할 지수를 입력 받아 해당 항목을 다항식에서 제거한다. 
     제거된 노드는 free 시키지 않고 가용 공간으로 보낸다.

(4) 가용 공간에 있는 모든 노드들을 출력해 본다.

(5) 가용 공간에 있는 모든 노드들을 반환한다.

예를 들어 수행 결과는 다음과 같이 출력된다.

첫 번째 다항식을 입력하시오(계수, 지수 순) : 3 20 2 5 4 0
두 번째 다항식을 입력하시오(계수, 지수 순): 1 4 10 3 3 2 1 0
입력한 다항식은 : A(x) = 3x^20 + 2x^5 + 4
                           B(x) = x^4 + 10x^3 + 3x^2 + 1
다항식의 덧셈 결과는 : C(x) = 3x^20 + 2x^5 + x^4 + 10x^3 + 3x^2 + 5
제거시킬 항목의 지수는 : 20
다항식 C(x) = 2x^5 + x^4 + 10x^3 + 3x^2 + 5
가용공간에 있는 노드(계수, 지수) : 3 20


(음영처리된 부분은 모니터에 출력되어야 되는 형식)


ps. 리눅스 CRT를 이용하여 프로그래밍하며,
      리눅스 모듈화 프로그래밍은 makefile을 사용하여 컴파일한다.



기한 : 2009년 2월 20일 금요일 PM 11:50 까지.


제출 : rockdrumy@nate.com or 네이트온.

제출방법 : 워드문서로 레포트 형식과 동일하게 소스와 실행화면 스샷과 함께 작성하고, 
               Word 파일과 모듈화된 파일들을 압축하여 제출. 

궁금한 점은 무조건 저한테만 문의 바람. 웹사이트 & 네이버 지식검색 참조 금물.

Comments