【java学习记录】3.采用面向对象的方法设计一个能对复数(Complex)进行加、减、乘法的简单运算的程序

(源码在上传的压缩包“【java学习记录】1-10的代码”中可看到,该压缩包可下载)


Complex 类

public class Complex {

double real,imaginary;


Complex(double real,double imaginary){//初始化
this.real=real;
this.imaginary=imaginary;
}

Complex(){}//空函数

Complex add(Complex c){//复数加法
Complex c_add=new Complex();
c_add.real=real+c.real;
c_add.imaginary=imaginary+c.imaginary;
return c_add;
}

Complex sub(Complex c){//复数减法
Complex c_sub=new Complex();
c_sub.real=real-c.real;
c_sub.imaginary=imaginary-c.imaginary;
return c_sub;
}

Complex mul(Complex c){//复数乘法
Complex c_mul=new Complex();
c_mul.real=real*c.real-imaginary*c.imaginary;
c_mul.imaginary=imaginary*c.real+real*c.imaginary;
return c_mul;
}

/*void showComplex(){//输出复数
System.out.print(real+"+"+imaginary+"i"+"\n");
}*/
}

TestComplex测试类

public class TestComplex {

public static void main(String[] args){
Complex c1=new Complex(12.5,23.6);
Complex c2=new Complex(7.5,26.4);
//c1.showComplex();
//c2.showComplex();
System.out.print("c1="+c1.real+"+"+c1.imaginary+"i"+"\n");
System.out.println("c2="+c2.real+"+"+c2.imaginary+"i"+"\n");

DecimalFormat df = new DecimalFormat( "0.00");//使输出的实部和虚部保留小数点后两位

Complex c3=c1.add(c2);//调用加法
System.out.print("c1+c2="+c3.real+"+"+c3.imaginary+"i"+"\n");
//c3.showComplex();

Complex c4=c1.sub(c2);//调用减法
if(c4.imaginary>0){
System.out.print("c1-c2="+c4.real+"+"+c4.imaginary+"i"+"\n");
}
else{
if(c4.imaginary<0){
System.out.print("c1-c2="+df.format(c4.real)+df.format(c4.imaginary)+"i"+"\n");
}
else{
System.out.print("c1-c2="+df.format(c4.real)+"\n");
}
}

Complex c5=c1.mul(c2);//调用乘法
System.out.print("c1*c2="+df.format(c5.real)+"+"+df.format(c5.imaginary)+"i"+"\n");

}
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值