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 }

Java复数的定义与描述的更多相关文章

  1. 简单练习题2编写Java应用程序。首先定义一个描述银行账户的Account类,包括成员变 量“账号”和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。其次, 编写一个主类,在主类中测试Account类的功能

    编写Java应用程序.首先定义一个描述银行账户的Account类,包括成员变 量“账号”和“存款余额”,成员方法有“存款”.“取款”和“余额查询”.其次, 编写一个主类,在主类中测试Account类的 ...

  2. java实验作业类的定义与描述

    1 //1三角形的定义与描述 2 package test; 3 4 public class sjx { 5 private double a,b,c; 6 7 public sjx(double ...

  3. [JAVA] java class 基本定义 Note

    java class 基本定义 Note 1 package abeen.note; 2 import java.util.*; 3 4 5 /* 6 java calss 基本 7 */ 8 pub ...

  4. java类中定义接口

    今天看到一个java类中定义了接口,写个备忘录,记录一下 package com.gxf.test; public class Test_interface { public interface sh ...

  5. [改善Java代码]使用构造函数协助描述枚举项

    一.分析 一般来说,我们经常使用的枚举项只有一个属性,即排序号,其默认值是从0.1.2... ....但是除了排序号外,枚举还有一个(或多个)属性:枚举描述,它的含义是通过枚举的构造函数,声明每个枚举 ...

  6. 利用eclipse新建的java web项目没有部署描述符web.xml文件怎么办?

    原文转自:http://blog.csdn.net/suyu_yuan/article/details/50947007 利用eclipse新建的Java Web项目没有部署描述符web.xml文件, ...

  7. java它们的定义jar套餐读Excel(这包括2003和2007)数据,和实例

    使用java它们的定义jar套餐读excel数据支持excel2007和excel2003 在http://download.csdn.net/detail/u010792467/8079355下载所 ...

  8. JAVA数组的定义以及使用1

    public class HelloWorld { public static void main(String[] args){ // Scanner s = new Scanner(System. ...

  9. 【mybatis】mybatis使用java实体中定义的常量,或静态方法

    mybatis使用java实体中定义的常量 示例代码: <select id="findDealerInfo" parameterType="com.pisen.c ...

随机推荐

  1. 【总结】spring aop

    1.aop简介 AOP的全称是Aspect Oriented Programming,面向切面编程.它的主要思想是在程序正常执行的某一个点切进去加入特定的逻辑.AOP框架中对AOP支持最完整的是Asp ...

  2. java的“同一”与“相等”

    变量:引用(指向地址) + 值(该变量指向值所储存的那一片内存) 两个变量同一 : 判断 是否 这两个变量指向同一片内存. 两个变量相等 : 判断 是否 这两个变量的类型相同,且值相等. 注:常用的& ...

  3. STM32入门系列-使用库函数点亮LED,LED初始化函数

    要点亮LED,需要完成LED的驱动, 在工程模板上新建一个led.c和led.h文件,将其存放在led文件夹内.这两个文件需要我们自己编写. 通常xxx.c文件用于存放编写的驱动程序,xxx.h文件用 ...

  4. shell脚本之整数二次元比较操作符

    1.常用二次元比较操作符知识 我们也可以通过man test查看 提示: (1) ">"和"<"符号,在单括中需要转义,在双中括号中不需要转义,因为 ...

  5. python求平均数及打印出低于平均数的值列表

    刚学Python的时候还是要多动手进行一些小程序的编写,要持续不断的进行,知识才能掌握的牢.今天就讲一下Python怎么求平均数,及打印出低于平均数的数值列表 方法一: scores1 =  [91, ...

  6. Linux下开发环境的搭建(For C++ OIer)

    说句实话,对于OIer来说,Linux真的是个很好的开发平台. 这里既没有游戏的喧嚣,也没有广告的打扰,gcc/g++早已预装,一切已为你准备好......(???)即使对于日常使用,也绰绰有余. 如 ...

  7. Apache Kylin远程代码执行漏洞复现(CVE-2020-1956)

    Apache Kylin远程代码执行(CVE-2020-1956) 简介 Apache Kylin 是美国 Apache 软件基金会的一款开源的分布式分析型数据仓库.该产品主要提供 Hadoop/Sp ...

  8. php ci下添加一个创建常用的模块和控制器方法

    我这么写是非常不好的 ,这些都可以写在lirbraries里面 (ci就是这么干的) 我这里是自己用 大概一个模型 没那么多讲究 现在core/CodeIgniter.php 文件 if($modle ...

  9. kudu1.10基于cdh6.3.1搭建

    1.下载kudu依赖: yum -y install cyrus-sasl-plain ntp   2.下载kudu rpm包: wget https://archive.cloudera.com/c ...

  10. 内网渗透 day9-免杀基础

    免杀1 目录 1. 会话提升的几种方式 1 2. armitage的熟悉 2 3. handler生成监听器的方法 6 4. 防止会话假死 6 5. 控制台设置编码 7 6. upx加壳 7 7. m ...