ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java复数的定义与描述

2020-11-21 19:31:45  阅读:258  来源: 互联网

标签:real Java 定义 double image complex 复数 image2 real2


  1 //4.复数的定义与描述
  2 package test;
  3 
  4 import java.util.Scanner;
  5 
  6 public class complex {//复数类
  7       double real;//实部
  8       double image;//虚部
  9       complex(){
 10         Scanner in=new Scanner(System.in);
 11         double real=in.nextDouble();
 12         double image=in.nextDouble();
 13         complex(real,image);
 14       }
 15   public complex(double real, double image) {//有参构造函数
 16     this.real = real;
 17     this.image = image;
 18   }
 19   private void complex(double real, double image) {//给无参构造函数调用
 20     this.real = real;
 21     this.image = image;
 22   }
 23   public double getReal() {
 24     return real;
 25   }
 26   public void setReal(double real) {
 27     this.real = real;
 28   }
 29   public double getImage() {
 30     return image;
 31   }
 32   public void setImage(double image) {
 33     this.image = image;
 34   }
 35   //复数相加
 36   complex add(complex a) {
 37     double real2=a.getReal();
 38     double image2=a.getImage();
 39     double newreal=real+real2;
 40     double newimage=image+image2;
 41     complex result=new complex(newreal, newimage);
 42     return result;
 43   }
 44   //复数相减
 45   complex sub(complex a) {
 46     double real2=a.getReal();
 47     double image2=a.getImage();
 48     double newreal=real-real2;
 49     double newimage=image-image2;
 50     complex result=new complex(newreal, newimage);
 51     return result;
 52   }
 53   //复数相乘
 54   complex mul(complex a) {
 55     double real2=a.getReal();
 56     double image2=a.getImage();
 57     double newreal=real*real2-image*image2;
 58     double newimage=image*real2 + real*image2;
 59     complex result=new complex(newreal, newimage);
 60     return result;
 61   }
 62   //复数相除
 63   complex div(complex a) {
 64     double real2=a.getReal();
 65     double image2=a.getImage();
 66     double newreal=(real*real2+image*image2)/(real2*real2 + image2*image2);
 67     double newimage=(image*real2 - real*image2)/(real2*real2 + image2*image2);
 68     complex result=new complex(newreal, newimage);
 69     return result;
 70   }
 71   // 输出  
 72    public void print(){ 
 73           if(image > 0){  
 74               System.out.println(real + " + " + image + "i");  
 75           }else if(image < 0){  
 76               System.out.println(real + "" + image + "i");  
 77           }else{  
 78               System.out.println(real);  
 79           }  
 80       } 
 81 }
 82 
 83 
 84 package test;
 85 
 86 public class complextest {
 87 
 88   public static void main(String[] args) {
 89     System.out.println("请输入第一个复数的实部和虚部:");
 90         complex a1=new complex();
 91         
 92         System.out.println("请输入第二个复数的实部和虚部:");
 93         complex a2=new complex();
 94         
 95         complex add=a1.add(a2);
 96         complex sub=a1.sub(a2);
 97         complex mul=a1.mul(a2);
 98         complex div=a1.div(a2);
 99         
100         //输出
101         System.out.println("相加的结果为:");
102         add.print();
103         System.out.println("相减结果为:");
104         sub.print();
105         System.out.println("相乘的结果为:");
106         mul.print();
107         System.out.println("相除的结果为:");
108         div.print();
109   }
110 
111 }

 

标签:real,Java,定义,double,image,complex,复数,image2,real2
来源: https://www.cnblogs.com/dss-99/p/14016881.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有