码迷,mamicode.com
首页 > 其他好文 > 详细

定义一个复数(z=x+iy)类Complex,包含: 两个属性:实部x和虚部y 默认构造函数 Complex(),设置x=0,y=0 构造函数:Complex(int i,int j) 显示复数的方法:showComp()将其显示为如: 5+8i或5-8i 的形式。 求两个复数的和的方法:(参数是两个复数类对象,返回值是复数类对象)public Complex addComp(Compl

时间:2017-11-04 23:38:36      阅读:397      评论:0      收藏:0      [点我收藏+]

标签:函数返回值   void   turn   完整   接受   int   col   imp   构造函数   

因标题框有限,题目未显示完整,以下再放一份:

 

定义一个复数(z=x+iy)类Complex,包含:

 两个属性:实部x和虚部y

 默认构造函数 Complex(),设置x=0,y=0

 构造函数:Complex(int i,int j)

显示复数的方法:showComp()将其显示为如: 5+8i或5-8i 的形式。

求两个复数的和的方法:(参数是两个复数类对象,返回值是复数类对象)public Complex addComp(Complex C1,Complex C2)

 求两个复数的差的方法:(参数是两个复数类对象,返回值是复数类对象)public Complex subComp(Complex C1,Complex C2)

求两个复数的乘积的方法:(参数是两个复数类对象,返回值是复数类对象,新复数实部=两复数实部乘积-两复数虚部乘积,新复数虚部=两复数实部与虚部交叉乘积之和,)public Complex multiComp(Complex C1,Complex C2)

比较两个复数是否相等的方法(参数是两个复数类对象,返回值是boolean类型)public boolean equalComp(Complex C1,Complex C2)

 Application中测试该类的方法,实部x和虚部y可由main方法参数提供输入。

 

与上题如出一辙.

用到:1.对象作形参;2.Scanner类;

以下是具体代码(将进行具体分析):

 1 import java.util.Scanner;
 2 class Complex{
 3 public int x;
 4 public int y;
 5 Complex(){
 6 x=0;
 7 y=0;
 8 }
 9 Complex(int i,int j){
10 x=i;
11 y=j;
12 }
13 public void showComp(){            //控制显示格式
14 if(y>=0)
15 System.out.println(x+"+"+y+"i");
16 else 
17 System.out.println(x+"-"+(-y)+"i");
18 }
19 static Complex addComp(Complex C1,Complex C2){  //复数相加 注意:同上题,函数返回值类型是对象;对象作形参;
20 Complex C=new Complex();
21 C.x=C1.x+C2.x;
22 C.y=C1.y+C2.y;
23 return C;
24 }
25 static Complex subComp(Complex C1,Complex C2){  //复数相减
26 Complex C=new Complex();
27 C.x=C1.x-C2.x;
28 C.y=C1.y-C2.y;
29 return C;
30 }
31 static Complex multiComp(Complex C1,Complex C2){  //复数相乘
32 Complex C=new Complex();
33 C.x=C1.x*C2.x;
34 C.y=C1.y*C2.y;
35 return C;
36 }
37 static boolean equalComp(Complex C1,Complex C2){  //判断复数是否相等
38 if(C1.x==C2.x&&C1.y==C2.y)
39 return true;
40 else 
41 return false;
42 }
43 }
44 public class Test2_3{
45 private static Scanner input;
46 public static void main(String args[]){
47 input=new Scanner(System.in);
48 int i=input.nextInt();                  //分别是两个复数的x,y值
49 int j=input.nextInt();
50 int m=input.nextInt();
51 int n=input.nextInt();
52 
53 Complex C;                     //新建一个对象的引用,用于接受函数的返回的对象
54 Complex C1=new Complex(i,j);
55 Complex C2=new Complex(m,n);
56 boolean b;                      //用于接受判断是否相等时返回的boolean值
57 
58 C=Complex.addComp(C1,C2);
59 C.showComp();                    
60 
61 C=Complex.subComp(C1,C2);
62 C.showComp();
63 
64 C=Complex.multiComp(C1,C2);
65 C.showComp();
66 
67 b=Complex.equalComp(C1,C2);
68 if(b==true)
69 System.out.println("相等");
70 else
71 System.out.println("不相等");
72 }
73 }

 

定义一个复数(z=x+iy)类Complex,包含: 两个属性:实部x和虚部y 默认构造函数 Complex(),设置x=0,y=0 构造函数:Complex(int i,int j) 显示复数的方法:showComp()将其显示为如: 5+8i或5-8i 的形式。 求两个复数的和的方法:(参数是两个复数类对象,返回值是复数类对象)public Complex addComp(Compl

标签:函数返回值   void   turn   完整   接受   int   col   imp   构造函数   

原文地址:http://www.cnblogs.com/silenTJ/p/7784919.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!