목차
1. 문제기술
2. 입출력의 예
3. 문제풀이방법
4. 소스프로그램
5. 수행의 예
2. 입출력의 예
3. 문제풀이방법
4. 소스프로그램
5. 수행의 예
본문내용
exp))
{
case -1://p(x)의 지수값 < q(x)의 지수값
if (avail >= MAX) { //
fprintf(stderr, "다항식에 항이 너무 많다."); //
exit(1); //
} //
polynomial[avail].coef = polynomial[sq].coef; //
polynomial[avail].exp = polynomial[sq].exp; //
++avail; //attach기능
sq++;
break;
case 0://p(x)의 지수값 = q(x)의 지수값
tempcoef=polynomial[sp].coef+polynomial[sq].coef;
if(tempcoef){
if (avail >= MAX) {
fprintf(stderr, "다항식에 항이 너무 많다.");
exit(1);
}
polynomial[avail].coef = tempcoef;
polynomial[avail].exp = polynomial[sp].exp;
++avail;
}
sp++; sq++;
break;
case 1://p(x)의 지수값 > q(x)의 지수값
if (avail >= MAX) {
fprintf(stderr, "다항식에 항이 너무 많다.");
exit(1);
}
polynomial[avail].coef = polynomial[sp].coef;
polynomial[avail].exp = polynomial[sp].exp;
++avail;
sp++;
}
//p(x)의 나머지 항목을 이동함
for(;sp<=fp;sp++){
if (avail >= MAX) {
fprintf(stderr, "다항식에 항이 너무 많다.");
exit(1);
}
polynomial[avail].coef = polynomial[sp].coef;
polynomial[avail].exp = polynomial[sp].exp;
++avail;
}
//q(x)의 나머지 항목을 이동함
for(;sq<=fq;sq++){
if (avail >= MAX) {
fprintf(stderr, "다항식에 항이 너무 많다.");
exit(1);
}
polynomial[avail].coef = polynomial[sq].coef;
polynomial[avail].exp = polynomial[sq].exp;
++avail;
}
fr=avail-1;
//R(x)출력하기
printf("R : ");
for(i=(size_1+size_2);i
if(polynomial[i].exp!=0){
printf("(%d) X(%d) + ",polynomial[i].coef,polynomial[i].exp);
}
else printf("(%d)",polynomial[i].coef);
}
printf("\n\n");
}
5. 수행의 예
① P(x) : 3X(1000) + 4X(1) - 1
Q(x) : 1X(3) + 20X(2) -5X(1) + 10
-> 두 다항식 P(x)와 Q(x)의 합이 R(x)의 결과로 나타난다.
과제에 제시된 예문이다.
② P(x) = 1X(3) + 20X(2) -5X(1) + 10 , Q(x) = 3X(1000) + 4X(1) - 1
-> 두 다항식 P(x)와 Q(x)의 합이 R(x)의 결과로 나타난다.
③ P(x) = 20X(30) + 20X(2) -5X(1) + 10 , Q(x) = 3X(4) + 4X(2) - 8
④ P(x)=20X(30)+2X(5)-5X(4)+10X(2)+9X+1 ,Q(x)=3X(6)+4X(5)-8X(4)+20X(2)+10X+20
⑤ P(x)=20X(5)+2X(4)+11X(2)+5X-9 ,Q(x)=3X(6)+4X(5)-8X(4)+15
{
case -1://p(x)의 지수값 < q(x)의 지수값
if (avail >= MAX) { //
fprintf(stderr, "다항식에 항이 너무 많다."); //
exit(1); //
} //
polynomial[avail].coef = polynomial[sq].coef; //
polynomial[avail].exp = polynomial[sq].exp; //
++avail; //attach기능
sq++;
break;
case 0://p(x)의 지수값 = q(x)의 지수값
tempcoef=polynomial[sp].coef+polynomial[sq].coef;
if(tempcoef){
if (avail >= MAX) {
fprintf(stderr, "다항식에 항이 너무 많다.");
exit(1);
}
polynomial[avail].coef = tempcoef;
polynomial[avail].exp = polynomial[sp].exp;
++avail;
}
sp++; sq++;
break;
case 1://p(x)의 지수값 > q(x)의 지수값
if (avail >= MAX) {
fprintf(stderr, "다항식에 항이 너무 많다.");
exit(1);
}
polynomial[avail].coef = polynomial[sp].coef;
polynomial[avail].exp = polynomial[sp].exp;
++avail;
sp++;
}
//p(x)의 나머지 항목을 이동함
for(;sp<=fp;sp++){
if (avail >= MAX) {
fprintf(stderr, "다항식에 항이 너무 많다.");
exit(1);
}
polynomial[avail].coef = polynomial[sp].coef;
polynomial[avail].exp = polynomial[sp].exp;
++avail;
}
//q(x)의 나머지 항목을 이동함
for(;sq<=fq;sq++){
if (avail >= MAX) {
fprintf(stderr, "다항식에 항이 너무 많다.");
exit(1);
}
polynomial[avail].coef = polynomial[sq].coef;
polynomial[avail].exp = polynomial[sq].exp;
++avail;
}
fr=avail-1;
//R(x)출력하기
printf("R : ");
for(i=(size_1+size_2);i
printf("(%d) X(%d) + ",polynomial[i].coef,polynomial[i].exp);
}
else printf("(%d)",polynomial[i].coef);
}
printf("\n\n");
}
5. 수행의 예
① P(x) : 3X(1000) + 4X(1) - 1
Q(x) : 1X(3) + 20X(2) -5X(1) + 10
-> 두 다항식 P(x)와 Q(x)의 합이 R(x)의 결과로 나타난다.
과제에 제시된 예문이다.
② P(x) = 1X(3) + 20X(2) -5X(1) + 10 , Q(x) = 3X(1000) + 4X(1) - 1
-> 두 다항식 P(x)와 Q(x)의 합이 R(x)의 결과로 나타난다.
③ P(x) = 20X(30) + 20X(2) -5X(1) + 10 , Q(x) = 3X(4) + 4X(2) - 8
④ P(x)=20X(30)+2X(5)-5X(4)+10X(2)+9X+1 ,Q(x)=3X(6)+4X(5)-8X(4)+20X(2)+10X+20
⑤ P(x)=20X(5)+2X(4)+11X(2)+5X-9 ,Q(x)=3X(6)+4X(5)-8X(4)+15
추천자료
- [전산] 프로그램 망해석 소스
- [전산] TETRIS 소스 분석 설명서1
- [컴공]포인터 소스 프로그램
- AM의 총괄적 이론과 매틀랩 구현(소스포함) - 한글97
- [프로젝트][컴퓨터학과 프로젝트] 오델로 게임 완결편 !!!(소스 포함)
- (자료구조)배열을 이용한 삽입 & 삭제 소스
- (자료구조) 스레드 이진트리 중위운행 결과 소스
- C++로 작성한 구구단 소스 (입력한 것만 출력되는 구구단)
- java를 이용한 타자연습프로그램을 만들기 flowchart,statediagram,소스
- 우리나라 전통고추장의 특성을 살린 국제적 소스의 개발
- SIC/XE 구현 프로그램 소스
- 로또추첨기 C# 코드 소스
- 자료구조 Stack을 이용한 프로그램 소스 괄호 검사
- ATMEGA128 을 활용한 2인용 테트리스 게임 소스 + 보고서
소개글