반응형
학번 두개를 가지고 다항식을 하나만든다. 이렇게 만든 두개의 다항식으로 곱셈을 한다.
과제가 다항식의 곱셈이었지만 어느새 다른부분이 더욱 집중이 되어버린;;
그 다른부분중 하나가 addTerm(zeroP(),3,2) 이런 부분이다.
zeroP() : 빈 다항식 배열을 만들어서 주소를 리턴
addTerm() : 다항식 배열에 계수와 차수를 저장한다.
다항식을 만들때 이렇게 함수를 사용하여 만들었음
출력은 다항식이 만들어지는 과정과 곱한 결과가 나오게 하였음.
학번 두개로 다항식을 만든 규칙은 첫번째 학번을 정렬을 하여 20075278 을 87752200 으로 만든다.
그리고 두번째 학번에서 0을 제외한 숫자들을 계수로 한다. 20075277을 275277을 계수로 한다.
그래서 다항식 2X^8 + 7X^7 + 5X^7 + 2X^5 + 7X^2 + 7X^2 을 만든다.
차수가 같은것은 더해주므로 2X^8 + 12X^7 + 2X^5 + 14X^2 이 된다. 이렇게 두개를 만드는 것이다.
// 빈 다항식
poly = zeroP();
// 계수와 차수를 이용해서 다항식을 만든다.
for(i=0; i<MAX_SIZE; i++)
{
if(!rank[i]) break;
poly = addTerm(poly,rank[i],degree[i]);
}
이 부분이 다항식을 만들어 주는 과정이다. 위에 규칙으로 만들어진 차수와 계수는 degree, rank배열에 저장된다.
두 배열을 가지고 다항식을 만들어주는 것이다.
정렬은 총 3번이 들어갔다. 당항식을 만들때 각각 한번씨 쓰고 마지막으로 곱셈결과를 정렬할때 한번 쓰인다.
정렬 알고리즘은 알고리즘 시간에 배웠던 삽입정렬을 사용하였음.
곱셈 알고리즘은 일반 손으로 계산할때 하는 방식으로 하였습니다;; 비효율적일수도 있지만;
반응형
'중대 컴공' 카테고리의 다른 글
[LinkedList] Insertion Sort (삽입정렬) (0) | 2009.04.04 |
---|---|
[LinkedList] reverse (0) | 2009.03.29 |
자료구조분석 - 성적관리 수정 (C) (0) | 2009.03.06 |
데이터 구조 분석 - 성적관리(java) (0) | 2009.03.05 |
데이터 구조 분석 - 성적관리(c) (0) | 2009.03.03 |