Java复数的定义与描述
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复数的定义与描述的更多相关文章
- 简单练习题2编写Java应用程序。首先定义一个描述银行账户的Account类,包括成员变 量“账号”和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。其次, 编写一个主类,在主类中测试Account类的功能
编写Java应用程序.首先定义一个描述银行账户的Account类,包括成员变 量“账号”和“存款余额”,成员方法有“存款”.“取款”和“余额查询”.其次, 编写一个主类,在主类中测试Account类的 ...
- java实验作业类的定义与描述
1 //1三角形的定义与描述 2 package test; 3 4 public class sjx { 5 private double a,b,c; 6 7 public sjx(double ...
- [JAVA] java class 基本定义 Note
java class 基本定义 Note 1 package abeen.note; 2 import java.util.*; 3 4 5 /* 6 java calss 基本 7 */ 8 pub ...
- java类中定义接口
今天看到一个java类中定义了接口,写个备忘录,记录一下 package com.gxf.test; public class Test_interface { public interface sh ...
- [改善Java代码]使用构造函数协助描述枚举项
一.分析 一般来说,我们经常使用的枚举项只有一个属性,即排序号,其默认值是从0.1.2... ....但是除了排序号外,枚举还有一个(或多个)属性:枚举描述,它的含义是通过枚举的构造函数,声明每个枚举 ...
- 利用eclipse新建的java web项目没有部署描述符web.xml文件怎么办?
原文转自:http://blog.csdn.net/suyu_yuan/article/details/50947007 利用eclipse新建的Java Web项目没有部署描述符web.xml文件, ...
- java它们的定义jar套餐读Excel(这包括2003和2007)数据,和实例
使用java它们的定义jar套餐读excel数据支持excel2007和excel2003 在http://download.csdn.net/detail/u010792467/8079355下载所 ...
- JAVA数组的定义以及使用1
public class HelloWorld { public static void main(String[] args){ // Scanner s = new Scanner(System. ...
- 【mybatis】mybatis使用java实体中定义的常量,或静态方法
mybatis使用java实体中定义的常量 示例代码: <select id="findDealerInfo" parameterType="com.pisen.c ...
随机推荐
- 【转】Hello SDL
from:http://lazyfoo.net/tutorials/SDL/01_hello_SDL/index.php Last Updated 6/11/19 So you learned the ...
- 导出excel带合并单元格方法的Demo
package com.test.util; import java.io.FileNotFoundException; import java.io.FileOutputStream; import ...
- css3滚动条样式美化
关于滚动条的设计,需要用到css3的微元素,都列在下边吧(以Chrome内核webkit为例). -webkit-scrollbar 滚动条的整体轮廓,width表示纵向滚动条的宽度,heig ...
- jquery里面的一些方法使用
prop("属性名"); //获取属性名 prop("属性名","属性值"); //设置属性名 change(fucntion(){ ...
- symfony3.4 配置高效的邮箱swiftmailer插件
网站经常需要邮件发送,symfony里面swiftmailerBundle是一个非常并且稳定的发送邮件的第三方插件. 我们来看一下symfony里面的邮件怎么配置. 第一步我们先下载bundle: c ...
- python实现密码破解
排列组合(破解密码) 关注公众号"轻松学编程"了解更多. 1.排列 itertools.permutations(iterable,n) 参数一:要排列的序列, 参数二:要选取的个 ...
- 探索G1垃圾回收器
前言 最近王子因为个人原因有些忙碌,导致文章更新比较慢,希望大家理解,之后也会持续和小伙伴们一起共同分享技术干货. 上篇JVM的文章中我们对ParNew和CMS垃圾回收器已经有了一个比较透彻的认识,感 ...
- pycharm新建项目时选择virtualenv的说明
虚拟环境及venv和virtualenv介绍:https://www.cnblogs.com/mind18/p/13877170.html pip介绍:https://www.cnblogs.com/ ...
- MarkDown排版、多样的文本框
<战争与和平>一八一二年,俄.法两国再度交战,安德烈·保尔康斯基在战役中身受重伤,而俄军节节败退,眼见莫斯科将陷于敌人之手了.罗斯托夫将原本用来搬运家产的马车,改去运送伤兵,娜达莎方能于伤 ...
- 一款基于.NET Core的认证授权解决方案-葫芦藤1.0开源啦
背景 18年公司准备在技术上进行转型,而公司技术团队是互相独立的,新技术的推动阻力很大.我们需要找到一个切入点.公司的项目很多,而各个系统之间又不互通,导致每套系统都有一套登录体系,给员工和客户都带来 ...