「复数的运算代码java」复数的运算公式
本篇文章给大家谈谈复数的运算代码java,以及复数的运算公式对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java 编写一个可对复数进行加减运算的程序
- 2、JAVA实现复数加、减、乘的运算
- 3、java:创建复数类并实现复数的基本运算
- 4、用JAVA实现复数的混合运算的源程序
- 5、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的信息别忘了在本站进行查找喔。
发布于:2022-12-07,除非注明,否则均为
原创文章,转载请注明出处。