[자료구조] 다항식 추가하고 더하고 비교하고 출력하는 소스코드
- 최초 등록일
- 2023.04.07
- 최종 저작일
- 2017.09
- 7페이지/ 어도비 PDF
- 가격 1,000원
소개글
자료구조 다항식 추가하고 더하고 비교하고 출력하는 소스코드
// 다항식 출력 함수.
void poly_print(polynomial p){
}
// 두개의 정수를 비교
char compare(int a, int b){
}
// 새로운 항을 다항식에 추가한다.
void attach(float coef, int expon){
}
// C = A + B 다항식을 더하는 함수
void poly_add2(int As, int Ae, int Bs, int Be, int *Cs, int *Ce){
}
목차
없음
본문내용
include <stdio.h>
2 #define MAX(a,b) (((a)>(b))?(a):(b))
3 #define MAX_DEGREE 101
4 typedef struct { // 다항식 구조체 타입 선언
5 int degree; // 다항식의 차수
6 float coef[MAX_DEGREE]; // 다항식의 계수
7 } polynomial;
8 //
9 polynomial poly_add1(polynomial A, polynomial B) // C=A+B
10 {
11 polynomial C; // 결과 다항식
12 int Apos=0, Bpos=0, Cpos=0; // 배열 인덱스 변수
13 int degree_a=A.degree;
14 int degree_b=B.degree;
15 C.degree = MAX(A.degree, B.degree); // 결과 다항식 차수
16 while( Apos<=A.degree && Bpos<=B.degree ){
17 if( degree_a > degree_b ){
18 C.coef[Cpos++]= A.coef[Apos++];
19 degree_a--;
20 }
21 else if( degree_a == degree_b ){
22 C.coef[Cpos++]=A.coef[Apos++]+B.coef[Bpos++];
23 degree_a--; degree_b--;
24 }
25 else {
26 C.coef[Cpos++]= B.coef[Bpos++];
27 degree_b--;
28 }
29 }
30 return C;
31 }
참고 자료
없음