为了账号安全,请及时绑定邮箱和手机立即绑定

Java中 如果复数类成员是int型,怎么实现两个复数相除

Java中 如果复数类成员是int型,怎么实现两个复数相除

守着星空守着你 2018-12-06 19:10:28
(1) 复数类Complex 的属性有: RealPart :    int型,代表复数的实数部分 ImaginPart :  int型,代表复数的虚数部分 package applet;import java.applet.*;import java.awt.*;public class j_1 extends Applet{   Complex a,b,c,d,e,f;   public void init()   {     a=new Complex(2,2);     b=new Complex(3,4);     c=new Complex();     d=new Complex();     e=new Complex();     f=new Complex();   }   public void paint(Graphics g)   {     c=a.add(b);     d=a.sub(b);     e=a.mul(b);     f=a.div(b);     g.drawString("第一个复数:"+a.ToString(), 10, 50);     g.drawString("第二个复数:"+b.ToString(), 10, 70);     g.drawString("两复数之和:"+c.ToString(), 10, 90);     g.drawString("两复数之差:"+d.ToString(), 10, 110);     g.drawString("两复数相乘:"+e.ToString(), 10, 130);     g.drawString("两复数相除:"+f.ToString(), 10, 150);   }}class Complex{   public int realPart;   public int imaginPart;   Complex(int r,int i)   {realPart=r;imaginPart=i;}   Complex(){realPart=0;imaginPart=0;}   Complex add(Complex a)   {     Complex temp=new Complex();     temp.realPart=realPart+a.realPart;     temp.imaginPart=imaginPart+a.imaginPart;     return temp;   }   Complex sub(Complex a)   {     Complex temp=new Complex();     temp.realPart=realPart-a.realPart;     temp.imaginPart=imaginPart-a.imaginPart;     return temp;   }   Complex mul(Complex a)   {     int r,i,ra,ia;     r=this.realPart;     i=this.imaginPart;     ra=a.realPart;     ia=a.imaginPart;     Complex temp=new Complex();     temp.realPart=r*ra-i*ia;     temp.imaginPart=i*ra+r*ia;     return temp;   }   Complex div(Complex a)   {     double r,i,ra,ia;     r=this.realPart;     i=this.imaginPart;     ra=a.realPart;     ia=a.imaginPart;     Complex temp=new Complex();     temp.realPart=(r*ra+i*ia)/(ra*ra+ia*ia);//这个地方应该如何修改,还是说只能改成把类成员变量改成double型数据才可以     temp.imaginPart=(i*ra-r*ia)/(ra*ra+ia*ia);     return temp;   }   public String ToString()   {     if(imaginPart<0)     {       return (realPart+(imaginPart+"i"));     }     else return(realPart+"+"+imaginPart+"i");   }}
查看完整描述

2 回答

?
HUH函数

TA贡献1836条经验 获得超4个赞

不知道为何要这样做,为什么不用BigDecimal

查看完整回答
反对 回复 2018-12-16
?
慕哥6287543

TA贡献1831条经验 获得超10个赞

前面加个类型转换,转成double不就可以了

查看完整回答
反对 回复 2018-12-16
  • 2 回答
  • 0 关注
  • 632 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信