编写一个复数类,即该类有两个变量实部(real)和虚部(imaginary),都是double类型。
方法除了编写构造方法以外,还有三个方法:
- 两复数相加。add方法的声明可以是: public void Add( Complex c1); 也可以为其它形式,只要合理
Complex c3=new Complex();
Complex c2=new Complex(2,3);
c3.add(c2);====//c3+c2=è>c3
2.两复数相减。同上
3.打印该复数,打印的形式为: a+bi。注意:这里当b等于负时,或者b等于0时的形式等等.
代码:
package complex;
import java.util.Scanner;
public class Complex {
double real;
double imaginary;
public void set(double real,double imaginary)
{
this.real=real;
this.imaginary=imaginary;
}
public void get()
{
Scanner in=new Scanner(System.in);
System.out.println("请分别输入复数的实部和虚部:");
real=in.nextDouble();
imaginary=in.nextDouble();
}
public Complex Add(Complex a,Complex b)
{
Complex c;
c=new Complex();
c.real=a.real+b.real;
c.imaginary=a.imaginary+b.imaginary;
return c;
}
public Complex Sub(Complex a,Complex b)
{
Complex c;
c=new Complex();
c.real=a.real-b.real;
c.imaginary=a.imaginary-b.imaginary;
return c;
}
public void Output()
{
if(imaginary > 0)
{
System.out.println(real + " + " + imaginary + "i");
}
else if(imaginary < 0)
{
System.out.println(real + "" + imaginary + "i");
}
else
{
System.out.println(real);
}
}
public static void main(String[] args) {
Complex a;
a=new Complex();
a.get();
System.out.println("复数a为");
a.Output();
Complex b;
b=new Complex();
b.get();
System.out.println("复数b为");
b.Output();
Complex c;
c=new Complex();
c=c.Add(a, b);
System.out.println("复数a+b的结果为");
c.Output();
c=c.Sub(a, b);
System.out.println("复数a-b的结果为");
c.Output();
}
}
运行结果: