创建一个complex包,包中定义一个复数类Complex,实现复数的加减乘法(包括其中有一个是实数的情况)以及相应的set /get方法,然后编写另一个应用程序进行验证包

public class ComplexTester{
	public static void main(String[] args)
	{
		Complex z1=new Complex(1,2);
		Complex z2=new Complex(3,4);
		System.out.println(z1+"+"+z2+"="+z1.add1(z2));
        System.out.println(z1+"-"+z2+"="+z1.sub1(z2));
		System.out.println(z1+"*"+z2+"="+z1.mul1(z2));
	}
}
class Complex{
	private double real, image;
	public Complex() {
		real = 0;
		image = 0;
	}

	public Complex(double real, double image) {
  	   this.real = real;
		this.image = image;
	}
	public Complex(Complex z) {
		this.real = z.getReal();
		this.image = z.getImage();
	}

	public void setReal() {
		this.real = real;
	}

	public void setImage() {
		this.image = image;
	}

	public double getReal() {
		return real;
	}

	public double getImage() {
		return image;
	}

	// 复数+复数
	public Complex add1(Complex z) {
		return new Complex(getReal() + z.getReal(), getImage() + z.getImage());
	}

	// 复数+实数
	public Complex add2(double d) {
		return new Complex(getReal() + d, getImage());
	}

	// 复数+虚数
	public Complex add3(double d) {
		return new Complex(getReal(), getImage() + d);
	}

	// 复数-虚数
	public Complex sub1(Complex z) {
		return new Complex(getReal() - z.getReal(), getImage() - z.getImage());
	}

	// 复数-实数
	public Complex sub2(double d) {
		return new Complex(getReal() - d, getImage());
	}
	// 复数-虚数
	public Complex sub3(double d) {
		return new Complex(getReal(), getImage() - d);
	}
	// 复数*复数
	public Complex mul1(Complex z) {
		return new Complex(getReal() * z.getReal() - getImage() * z.getImage(),
				getImage() * z.getReal() + getReal() * z.getImage());
	}

	// 复数*实数
	public Complex mul2(double d) {
		return new Complex(getReal() * d, getImage() * d);
	}

	public String toString() {
		String str = "";
		if (image > 0)
			str = "(" + real + "+" + image + "i" + ")";
		if (image == 0)
			str = "(" + real + ")";
		if (image < 0)
			str = "(" + real + image + "i" + ")";
		return str;
	}
}

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值