수다닷컴

  • 해외여행
    • 괌
    • 태국
    • 유럽
    • 일본
    • 필리핀
    • 미국
    • 중국
    • 기타여행
    • 싱가폴
  • 건강
    • 다이어트
    • 당뇨
    • 헬스
    • 건강음식
    • 건강기타
  • 컴퓨터
    • 프로그램 개발일반
    • C언어
    • 비주얼베이직
  • 결혼생활
    • 출산/육아
    • 결혼준비
    • 엄마이야기방
  • 일상생활
    • 면접
    • 취업
    • 진로선택
  • 교육
    • 교육일반
    • 아이교육
    • 토익
    • 해외연수
    • 영어
  • 취미생활
    • 음악
    • 자전거
    • 수영
    • 바이크
    • 축구
  • 기타
    • 강아지
    • 제주도여행
    • 국내여행
    • 기타일상
    • 애플
    • 휴대폰관련
  • 프로그램 개발일반
  • C언어
  • 비주얼베이직

[질문] 자꾸 에러가 나는데 잘못된것좀 고쳐주세요....

채꽃

2023.04.01

다항식 덧셈 뺄셈 곱셈인데.. 자꾸 곱셈에서 에러가 납니다..

뭐가 잘못 됐는지 좀 가르쳐 주세요...

class Node {
int coef;
int exp;
Node link;

public Node(int x, int y) {
coef = y;
exp = x;
link = null;
}
}

public class Poly {
private Node head;
private Node last;

public Poly() {
head = null;
last = null;
}

public void appendTerm(int x, int y) {
Node newNode = new Node(x, y);

if (head == null) {
head = newNode;
last = newNode;
}
else {
last.link = newNode;
last = newNode;
}
}

public Poly polyAdd(Poly a) {
Node p = this.head;
Node q = a.head;

Poly res = new Poly();

while (p != null && q != null) {
if (p.exp == q.exp) {
if (p.coef + q.coef == 0) {
p = p.link;
q = q.link;
}
else {
res.appendTerm(p.exp, p.coef + q.coef);
p = p.link;
q = q.link;
}
}

else if (p.exp q.exp) {
res.appendTerm(q.exp, q.coef);
q = q.link;
}
else {
res.appendTerm(p.exp, p.coef);
p = p.link;
}
}

while (p != null)
{
res.appendTerm(p.exp, p.coef);
p = p.link;
}

while (q != null)
{
res.appendTerm(q.exp, q.coef);
q = q.link;
}
return res;
}

public Poly polyDiff(Poly a) {

Node p = this.head;
Node q = a.head;
Poly res = new Poly();

while (p != null && q != null) {
if (p.exp == q.exp) {
if (p.coef + q.coef == 0) {
p = p.link;
q = q.link;
}
else {
res.appendTerm(p.exp, p.coef - q.coef);
p = p.link;
q = q.link;
}

}
else if (p.exp q.exp) {
res.appendTerm(q.exp, -q.coef);
q = q.link;
}
else {
res.appendTerm(p.exp, p.coef);
p = p.link;
}
}

while (p != null) {
res.appendTerm(p.exp, p.coef);
p = p.link;
}
while (q != null)
{
res.appendTerm(q.exp, q.coef);
q = q.link;
}
return res;
}

public Poly polyMul(Poly a) {
Node p = this.head;
Node q = a.head;
Node x;

Poly res = new Poly();
Node temp = res.head;

while (p != null) {
while (q != null) {
x.exp = p.exp + q.exp;
if (temp == null) {
while (q != null) {
res.appendTerm(p.exp + q.exp, p.coef * q.coef);
q = q.link;
}
}

else {
while (temp !=null) {
if (temp == x.exp) {
res = temp;
&; res.coef += p.coef * q.coef;
temp = temp.link;
}
else if (temp x.exp) {
temp = temp.link;
}
else {
res = temp;
res.appendTerm(p.exp + q.exp, p.coef * q.coef);
temp = temp.link;
}

}
temp = res.head;
}
q = q.link;
}
q = a.head;
p = p.link;
}
return res;
}

public void print() {
Node temp = head;
while (temp != null) {
if (!temp.equals(head)) {
if (temp.coef = 0)
System.out.print( + );
else
System.out.print( - );

}
if (head == temp)
System.out.print(temp.coef + x^ + temp.exp);

else if (temp.exp == 0) {
System.out.print(temp.coef);
}
else {
if (temp.coef = 0)
System.out.print(temp.coef + x^ + temp.exp);
else
System.out.print(-temp.coef + x^ + temp.exp);
}
temp = temp.link;
}
System.out.println();
}

public static void main(String args[])
{
Poly p1 = new Poly();

p1.appendTerm(3, 5);
p1.appendTerm(2, 1);
p1.appendTerm(0, 7);

System.out.print(A = );
p1.print();

Poly p2 = new Poly();

p2.appendTerm(4, 2);
p2.appendTerm(2, -8);
p2.appendTerm(1, 4);

System.out.print(B = );
p2.print();

Poly p3 = p1.polyAdd(p2);
System.out.print(A + B = );
p3.print();
Poly p4 = p1.polyDiff(p2);
System.out.print(A - B = );
p4.print();
Poly p5 = p1.polyMul(p2);
System.out.print(A * B = );
p5.print();
}
}

신청하기





COMMENT

댓글을 입력해주세요. 비속어와 욕설은 삼가해주세요.

  • 돌삥

    말머리 달아주세요 ^^

번호 제 목 글쓴이 날짜
2699547 [급]레이어보다 object태그가 우선순위가 되는 문제 (5) DevilsTears 2025-06-27
2699518 javaScript중복체크 하는법좀.. 알려주세요 (3) 비 2025-06-26
2699495 이런 탭메뉴를 뭐라고 해야 하는지 모르겠네요 (1) 들빛 2025-06-26
2699380 메뉴가 계단식으로 나타나요.. ㅠ.ㅠ (5) 스릉흔다 2025-06-25
2699354 영문 웹폰트 관련 질문입니다!!! (1) 치킨마루 2025-06-25
2699329 윈도우 미디어 플레이어 URL 질문!!! (1) 제철 2025-06-25
2699296 동영상 배경 질문드려요!!!!!!!!!!!!!! 핫파랑 2025-06-24
2699214 position:fixed 에 대한 질문입니다.. (7) 사이 2025-06-24
2699183 제이쿼리 이미지 슬라이드 위치값 수정 초엘 2025-06-23
2699153 테마[ADORABLE]에서 페이지생성시 하위페이지는 2개밖에 안되나요? 흰여울 2025-06-23
2699129 네이버 블로그 또는 사이트의 글을 불러오기 갤원 2025-06-23
2699070 탭메뉴처럼 셀렉트 박스를 이용해서 내용을 출력할 수 있는 방법이 있을까요. (3) 큰꽃늘 2025-06-22
2699016 인터넷이 안되는 환경에서 validator설치방법 (3) 은송이 2025-06-22
2698988 대체 C++ 6.0 exe 아이콘은 어떻게 넣는건가요? 외국녀 2025-06-22
2698960 음성파일을 embed로 작업했는데..웹 표준코딩으로 변경하려면 어떻게 해야하나요? (1) 잎새 2025-06-21
2698932 메뉴목록 풍선창 만들기 html (2) 하늘이 2025-06-21
2698901 http://www.zeitgeistbot.com/ 이 사이트처럼 움직이는 효과를 무엇이라고 하나요? 누림 2025-06-21
2698876 table width값 크로스브라우징에 대한 문의 (2) 볼수록매력 2025-06-21
2698849 c언어 질문. (3) 아름나 2025-06-20
2698823 setInterval 이벤트 제거 하려면... 가온길 2025-06-20
<<  이전  1 2 3 4 5 6 7 8 9 10  다음  >>

수다닷컴 | 여러분과 함께하는 수다토크 커뮤니티 수다닷컴에 오신것을 환영합니다.
사업자등록번호 : 117-07-92748 상호 : 진달래여행사 대표자 : 명현재 서울시 강서구 방화동 890번지 푸르지오 107동 306호
copyright 2011 게시글 삭제 및 기타 문의 : clairacademy@naver.com