flash网站欣赏,十大著名企业文化,社交网站开发技术岗,修改wordpress登录背景图复数的四则运算#xff08;java版#xff09; 目录 复数的四则运算#xff08;java版#xff09;介绍复数的四则运算实现思路代码1、封装复数类2、测试复数类3、代码测试结果 介绍 复数#xff0c;为实数的延伸#xff0c;它使任一多项式方程都有根。复数当中有个“虚数单…复数的四则运算java版 目录 复数的四则运算java版介绍复数的四则运算实现思路代码1、封装复数类2、测试复数类3、代码测试结果 介绍 复数为实数的延伸它使任一多项式方程都有根。复数当中有个“虚数单位 ” i它是−1的一个平方根即 i^2−1。任一复数都可表达为 **xyi**其中x及y皆为实数分别称为复数之“实部”和“虚部”。 四则运算是一种简单基本的数学运算即 加法 、 减法 、 乘法 和 除法 四种运算。 复数的四则运算
要想实现复数的四则运算我们就要先知道复数的四则运算分别都是如何计算的。
两个复数的四则运算数学表达式
复数一abi
复数二cdi加法 abi cdi (ac)(bd)i
减法 abi - (cdi) (a-c)(bd)i
乘法 abi * (cdi) (ac-bd) (adbc)i
除法 (abi)/(cdi) [(acbd)(bc-ad)i]/(c^2d^2)实现思路
由于 java程序设计语言 是一门面向对象编程的所以我们可以考虑把 复数 封装成一个类然后我们就可以实例化这个类创建 复数 对象。我们在封装这个类的时候就可以思考该怎么封装要去思考 复数 这个对象 中应该具备什么样的属性和特征。
状态特征
状态特征也就是 复数对象 拥有的属性应该有 实部 和 虚部
行为特征
行为特征也就是 复数对象 的具备方法除了构造和setter and getter 方法还应该有 实现复数相加的方法add()实现复数相减的方法sub(),实现 复数相乘的方法mul(),实现复数相除的除法div()还有重写toString()的方法。
代码
1、封装复数类
//复数的四则运算
public class Complex {//实部和虚部的定义//定义成double比较好的的原因之一是因为 有除法运算private double realPart;private double imagePart;//构造方法public Complex() {}public Complex(double realPart, double imagePart) {this.realPart realPart;this.imagePart imagePart;}//setter and getterpublic double getImagePart() {return imagePart;}public void setImagePart(double imagePart) {this.imagePart imagePart;}public double getRealPart() {return realPart;}public void setRealPart(double realPart) {this.realPart realPart;}//复数的加法public Complex add(Complex complexNumber) {if (complexNumber null) {System.out.println(复数对象输入错误);return new Complex();}double newImagePart this.getImagePart() complexNumber.getImagePart();double newRealPart this.getRealPart() complexNumber.getRealPart();return new Complex(newRealPart, newImagePart);}//复数的减法public Complex sub(Complex complexNumber) {if (complexNumber null) {System.out.println(复数对象输入错误);return new Complex();}double newImagePart this.getImagePart() - complexNumber.getImagePart();double newRealPart this.getRealPart() - complexNumber.getRealPart();return new Complex(newRealPart, newImagePart);}//复数的乘法public Complex mul(Complex complexNumber) {if (complexNumber null) {System.out.println(输入复数对象错误);return new Complex();}double newRealPart this.getRealPart() * complexNumber.getRealPart() - this.getImagePart() * complexNumber.getImagePart();double newImagePart this.getRealPart() * complexNumber.getImagePart() this.getImagePart() * complexNumber.getRealPart();return new Complex(newRealPart, newImagePart);}public Complex division(Complex complexNumber) {if (complexNumber null) {System.out.println(输入复数对象错误);return new Complex();}double newRealPart (this.getRealPart() * complexNumber.getRealPart() this.getImagePart() * complexNumber.getImagePart()) / (complexNumber.getRealPart() * complexNumber.getRealPart() complexNumber.getImagePart() * complexNumber.getImagePart());double newImagePart (-this.getRealPart() * complexNumber.getImagePart() this.getImagePart() * complexNumber.getRealPart())/ (complexNumber.getRealPart() * complexNumber.getRealPart() complexNumber.getImagePart() * complexNumber.getImagePart());return new Complex(newRealPart, newImagePart);}//重写toString方法public String toString(){if(this.imagePart0){return this.realPartthis.imageParti; //如果是虚部是正数需要手动添加 }else if(this.imagePart0){return this.realPartthis.imageParti;//如果虚部是负数不用给你手动添加 -运算的结果自带}else return this.realPart ;}} 2、测试复数类
import java.util.Scanner;//测试封装的复数类实现负数的四则运算
public class ComplexTest {//这里我们可以采取从键盘中输入复数的实部和虚部public static void main(String[] args) {double realPart ;double imagePart ;Scanner s new Scanner(System.in);System.out.print(输入第一个复数的实部);realPart s.nextDouble();System.out.print(输入第一个复数的虚部);imagePart s.nextDouble();Complex complex1 new Complex(realPart,imagePart);System.out.print(输入第二个复数的实部);realPart s.nextDouble();System.out.print(输入第二个复数的虚部);imagePart s.nextDouble();Complex complex2 new Complex(realPart,imagePart);//测试复数的加减乘除System.out.println(加法 complex1.add(complex2));System.out.println(减法complex1.sub(complex2));System.out.println(乘法complex1.mul(complex2));System.out.println(除法complex1.division(complex2));}
}3、代码测试结果