「复数的运算代码java」复数的运算公式

博主:adminadmin 2022-12-07 06:09:07 111

本篇文章给大家谈谈复数的运算代码java,以及复数的运算公式对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java 编写一个可对复数进行加减运算的程序

1、real和image这两个field前面的static去掉。

2、public Complex() 这个构造器去掉,如果要接受输入的话,应该放到main方法里,这样这个类更清晰。

3、静态方法Complex_add和Complex_minus没指定返回值类型,应该返回的是Complex。另外方法名字首字母应小写。

4、参考这个:

JAVA实现复数加、减、乘的运算

//把里程序里的变量名稍微修改下就可以了

/*

* Copyright:bee1314 programs studio

* All my programs can be copied and modified

* *********************************************

* Author:hufeng date:2008/4/16

* Version:V1.0

* ********************************************

* Description:

* The programs creates a complexNumber class

* and includes basic operators

*/

import java.io.*;

class ComplexNumber

{

double realPart; //the real part of complexNumber

double virtualPart; //the vistual part of primerNumber

//construct function

public ComplexNumber(double realPart, double virtualPart)

{

this.realPart = realPart;

this.virtualPart = virtualPart;

}

public void addComplexNumber(ComplexNumber number1)

{

double rp = realPart + number1.realPart;

double vp = virtualPart + number1.virtualPart;

System.out.println("The addition is:");

System.out.print(rp + "+" + vp + "i");

System.out.println();

}

public void subComplexNumber(ComplexNumber number1)

{

double rp = realPart - number1.realPart;

double vp = virtualPart - number1.virtualPart;

System.out.println("The subtruction is:");

System.out.print(rp + "+ " + vp +"i");

System.out.println();

}

public void mulComplexNumber(ComplexNumber number1)

{

double rp = realPart * number1.realPart - virtualPart * number1.virtualPart;

double vp = realPart * number1.virtualPart + virtualPart * number1.realPart;

System.out.println("The multiple is:");

System.out.print(rp + "+" + vp + "i");

System.out.println();

}

public void divComplexNumber(ComplexNumber number1)

{

double rp = (realPart * number1.realPart + virtualPart * number1.virtualPart) / (number1.realPart * number1.realPart + number1.virtualPart * virtualPart);

double vp = (virtualPart * number1.realPart - realPart * number1.virtualPart)/ (number1.realPart * number1.realPart + number1.virtualPart * virtualPart);

System.out.println("The division is:" );

System.out.println(rp + "+" + vp + "i");

System.out.println();

}

}

class Console

{

public static void main(String[] args)throws IOException

{

InputStreamReader readRealPartNumber = new InputStreamReader(System.in);

BufferedReader inputRealPartNumber = new BufferedReader(readRealPartNumber);

System.out.println("Please enter the first number's realpart number:");

String strRealPartNumber = inputRealPartNumber.readLine();

double realPartNumber = Double.parseDouble(strRealPartNumber);

InputStreamReader readVirtualPartNumber = new InputStreamReader(System.in);

BufferedReader inputVirtualPartNumber = new BufferedReader(readVirtualPartNumber);

System.out.println("Please enter the first number's realpart number:");

String strVirtualPartNumber = inputVirtualPartNumber.readLine();

double virtualPartNumber = Double.parseDouble(strVirtualPartNumber);

InputStreamReader readRealPartNumber1 = new InputStreamReader(System.in);

BufferedReader inputRealPartNumber1 = new BufferedReader(readRealPartNumber1);

System.out.println("Please enter the second number's realpart number:");

String strRealPartNumber1 = inputRealPartNumber1.readLine();

double realPartNumber1 = Double.parseDouble(strRealPartNumber1);

InputStreamReader readVirtualPartNumber1 = new InputStreamReader(System.in);

BufferedReader inputVirtualPartNumber1 = new BufferedReader(readVirtualPartNumber1);

System.out.println("Please enter the second number's realpart number:");

String strVirtualPartNumber1 = inputVirtualPartNumber1.readLine();

double virtualPartNumber1 = Double.parseDouble(strVirtualPartNumber1);

ComplexNumber number = new ComplexNumber(realPartNumber, virtualPartNumber);

ComplexNumber number1 = new ComplexNumber(realPartNumber1, virtualPartNumber1);

number.addComplexNumber(number1);

number.subComplexNumber(number1);

number.mulComplexNumber(number1);

number.divComplexNumber(number1);

}

}

java:创建复数类并实现复数的基本运算

package main;

public class Complex {

private int a;

private int b;

public Complex() {

this.a = 0;

this.b = 0;

}

public Complex(int a, int b) {

this.a = a;

this.b = b;

}

public int getA() {

return a;

}

public void setA(int a) {

this.a = a;

}

public int getB() {

return b;

}

public void setB(int b) {

this.b = b;

}

@Override

public String toString() {

return "(" + a + "+" + b + "i)";

}

}

package main;

public class ComplexTest {

public static Complex add(Complex c1, Complex c2) {

return new Complex(c1.getA() + c2.getA(), c1.getB() + c2.getB());

}

public static Complex subtract(Complex c1, Complex c2) {

return new Complex(c1.getA() - c2.getA(), c1.getB() - c2.getB());

}

public static Complex multiply(Complex c1, Complex c2) {

return new Complex(c1.getA() * c2.getA() - c1.getB() * c2.getB(),

c1.getB() * c1.getA() + c1.getA() * c2.getB());

}

public static Complex division(Complex c1, Complex c2) {

int a = c1.getA();

int b = c1.getB();

int c = c2.getA();

int d = c2.getB();

return new Complex((a *c + b * d) / (c * c + d * d), (b * c - a * d) / (c * c + d * d));

}

public static void main(String []args) {

Complex c1 = new Complex(1, 2);

Complex c2 = new Complex();

System.out.println(c1);

System.out.println(c2);

System.out.println(add(c1, c2));

}

}

用JAVA实现复数的混合运算的源程序

public class Complex

{

private double realPart;

private double imaginaryPart;

public Complex(double a, double b)

{

this.realPart = a;

this.imaginaryPart = b;

}

public Complex add(Complex a)

{

Complex result = new Complex(this.realPart + a.realPart, this.imaginaryPart + a.imaginaryPart);//(why?)

return result;

}

public Complex decrease(Complex a)

{

Complex result = new Complex(this.realPart - a.realPart, this.imaginaryPart - a.imaginaryPart);//(why?)

return result;

}

public Complex multiply(Complex a)

{

double newReal = this.realPart*a.realPart - this.imaginaryPart * a.imaginaryPart;

double newImaginary = this.realPart*a.imaginaryPart + this.imaginaryPart * a.realPart;

Complex result = new Complex(newReal, newImaginary);

return result;

}

public Complex divide(Complex a)

{

Complex conjugate = new Complex(this.realPart, -this.imaginaryPart);

Complex multiplication = conjugate.multiply(a);

multiplication.realPart /= this.realPart*this.realPart + this.imaginaryPart * this.imaginaryPart;

multiplication.imaginaryPart /= this.realPart*this.realPart + this.imaginaryPart * this.imaginaryPart;

return multiplication;

}

public String toString()

{

String show = this.realPart + " + " + this.imaginaryPart + "i";

return show;

}

public static void main(String [] args)

{

Complex a = new Complex (2, 3);

Complex b = new Complex (1,1);

System.out.println((a.add(b)).toString());

System.out.println((a.decrease(b)).toString());

System.out.println((a.multiply(b)).toString());

System.out.println((a.divide(b)).toString());

}

}

java 中实现复数的加减

(1):具体代码(附注释)

复数类:

public class Complex {

private float shibu;

private float xubu;

Complex()

{this(0,0);

}

Complex(float shibu,float xubu){

this.shibu=shibu;

this.xubu=xubu;

}

public void Add(Complex p)

{

Complex result=new Complex();

result.shibu=this.shibu+p.shibu;

result.xubu=this.xubu+p.xubu;

System.out.print("加法结果为:"+result.shibu+"+"+result.xubu+"i");

}

public void Sub(Complex p)

{

Complex result=new Complex();

result.shibu=this.shibu-p.shibu;

result.xubu=this.xubu-p.xubu;

System.out.print("加法结果为:"+result.shibu+"+"+result.xubu+"i");

}

public void Mul(Complex p)

{

Complex result=new Complex();

result.shibu=this.shibu*p.shibu-this.xubu*p.xubu;

result.xubu=this.shibu*p.xubu+p.shibu*this.xubu;

System.out.print("乘法结果为:"+result.shibu+"+"+result.xubu+"i");

}

public static void main(String[] args) {

Complex fushu1=new Complex(1,2);

Complex fushu2=new Complex(3,4);

fushu1.Add(fushu2);

fushu1.Sub(fushu2);

fushu1.Mul(fushu2);

}

}

(2):提供一个例子:

源代码:

import java.io.*;

public class Book{

double sb;

double xb;

Book(double x,double y){

this.sb=x;

this.xb=y;

}

Book(){

}

public static void main(String args[]){

System.out.println("请输入数据:");

double a=0;

double b=0;

double c=0;

double d=0;

String s;

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

System.out.println("请输入第一个复述的实部:");

try{

s = in.readLine();

a=Double.parseDouble(s);

}

catch(IOException e)

{ System.out.println("抛掷异常");}

System.out.println("请输入第一个复述的虚部:");

try{

s = in.readLine();

b =Double.parseDouble(s);

}

catch(IOException e)

{ System.out.println("抛掷异常");}

System.out.println("请输入第二个复述的实部:");

try{

s = in.readLine();

c =Double.parseDouble(s);

}

catch(IOException e)

{ System.out.println("抛掷异常");}

System.out.println("请输入第二个复述的虚部:");

try{

s = in.readLine();

d =Double.parseDouble(s);

}

catch(IOException e)

{ System.out.println("抛掷异常");}

Book h;

h=new Book(a,b);

Book j;

j=new Book(c,d);

System.out.println("您输入的一个数为:");

toString(h);

System.out.println("您输入的二个数为:");

toString(j);

Book k;

k=new Book();

char z='y';

do{

System.out.println("请选择您要进行的计算:");

System.out.println("1 :进行加法运算");

System.out.println("2 :进行减法运算");

System.out.println("3 :进行修改");

System.out.println("4 :进行乘法运算");

System.out.println("5 :进行除法运算");

System.out.println("6 :查看修改结果");

int i=0;

try{

i= Integer.parseInt(in.readLine());

}

catch(IOException e)

{ System.out.println("抛掷异常");}

switch(i)

{

case 1:

k.sb=jia(h.sb,j.sb);

k.xb=jia(h.xb,j.xb);

System.out.println("计算结果的实部为:"+k.sb);

System.out.println("计算结果的虚部为:"+k.xb);

toString(k);

break ;

case 2:

k.sb=jian(h.sb,j.sb);

k.xb=jian(h.xb,j.xb);

System.out.println("计算结果的实部为:"+k.sb);

System.out.println("计算结果的虚部为:"+k.xb);

toString(k);

break ;

case 3:

System.out.println("请输入您要修改哪个实数:");

int l=0;

try{

l= Integer.parseInt(in.readLine());

}

catch(IOException e)

{ System.out.println("抛掷异常");}

if(l==1)

{

h.xiugais(h);

h.xiugaix(h);

}

else

{

xiugais(j);

xiugaix(j);

}

break ;

case 4:

double f=0;

double e=0;

f=cheng(h.sb,j.sb)+cheng(h.xb,j.xb);

e=cheng(h.sb,j.xb)+cheng(h.xb,j.sb);

k.sb=(double)(Math.round(f*100)/100.0);

k.xb=(double)(Math.round(e*100)/100.0);

System.out.println("计算结果的实部为:"+k.sb);

System.out.println("计算结果的虚部为:"+k.xb);

toString(k);

break ;

case 5:

double chushu=cheng(j.sb,j.sb)-cheng(j.xb,-j.xb);

double beichushus=jian(cheng(h.sb,j.sb),cheng(h.xb,-j.xb));

double beichushux=jia(cheng(h.sb,-j.xb),cheng(h.xb,j.sb));

k.sb=chu(beichushus,chushu);

k.xb=chu(beichushux,chushu);

System.out.println("计算结果的实部为:"+k.sb);

System.out.println("计算结果的虚部为:"+k.xb);

toString(k);

break ;

case 6:

System.out.println("修改后的结果为:");

System.out.println("第一个复数:"+toString(h));

System.out.println("第二个复数:"+toString(j));

break ;

}

System.out.println("请问您是否还要继续 y/n:");

try{

z=(char)System.in.read();

System.in.skip(2); //忽略回车换行

}

catch(IOException e){}

} while(z=='y');

}

public static double gets(Book a){

return a.sb;

}

public static double getx(Book b){

return b.xb;

}

public static double xiugais(Book a)

{

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

System.out.println("请输入您要修改的实部:");

double m=0;

try{

m= Double.parseDouble(in.readLine());

}

catch(IOException e)

{ System.out.println("抛掷异常");}

a.sb=m;

System.out.println("修改成功:");

return 0;

}

public static double xiugaix(Book b)

{

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

System.out.println("请输入您要修改的虚部:");

double n=0;

try{

n= Double.parseDouble(in.readLine());

}

catch(IOException e)

{ System.out.println("抛掷异常");}

b.xb=n;

System.out.println("修改成功:");

return 0;

}

public static double jia(double a,double b)//

{

double c=0;

c=a+b;

System.out.println("加法成功:");

return c ;

}

public static double jian(double a,double b)

{

double c=0;

c=a-b;

System.out.println("减法成功:");

return c;

}

public static double cheng(double a,double b)

{

double c=0;

c=a*b;

System.out.println("乘法成功:");

return  c;

}

public static double chu(double a,double b)

{

double d=0;

double c=0;

d=a/b;

c=(double)(Math.round(d*100)/100.0);

System.out.println("除法成功:");

return c ;

}

public  static double toString(Book a){

System.out.println("结果为:"+a.sb+"+"+a.xb+"*i");

return 0;

}

}

(3)测试结果截图:

复数的运算代码java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于复数的运算公式、复数的运算代码java的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-07,除非注明,否则均为首码项目网原创文章,转载请注明出处。