定义一个复数(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

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

定义一个复数(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 }
时间: 2024-10-23 11:56:32

定义一个复数(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的相关文章

Javascript中构造函数的返回值问题和new对象的过程

首先明确一点:javascript中构造函数是不需要有返回值的,这一点跟java很类似.可以认为构造函数和普通函数的最大差别就是:构造函数中没有return语句,普通函数可以有return语句:构造函数中会使用this关键字定义成员变量和成员方法,普通的函数不会使用this关键字定义成员变量和方法. function Person(name,sex) { this.name = name; this.sex = sex; // return 1; //return true; //return

WebService,ASMX文件使用XML格式数据传递参数、验证与获取XML格式返回值的一种方式

1:首先WebService方法定义,每个方法定义两个参数,一个用于验证权限,string格式的XML文本用于传输数据.最终目的实现,WebService方法,验证权限,获取XML数据,处理之后返回XML数据.一下面一段代码为例进行说明: [WebMethodAttribute(Description = "新增督学计划")] public string InspectorPlan_Add(string Token, string XMLParas) { try { //安全凭证检查

js遍历ajax回调函数返回值中的object对象

function printObject(obj) {      //obj = {"cid":"C0","ctext":"区县"};      var temp = "";      for (var i in obj) { //用javascript的for/in循环遍历对象的属性          temp += i + ":" + obj[i] + "\n";

Java基础学习笔记十二 类、抽象类、接口作为方法参数和返回值以及常用API

不同修饰符使用细节 常用来修饰类.方法.变量的修饰符 public 权限修饰符,公共访问, 类,方法,成员变量 protected 权限修饰符,受保护访问, 方法,成员变量 默认什么也不写 也是一种权限修饰符,默认访问, 类,方法,成员变量 private 权限修饰符,私有访问, 方法,成员变量 static 静态修饰符 方法,成员变量 final 最终修饰符 类,方法,成员变量,局部变量 abstract 抽象修饰符 类 ,方法 我们编写程序时,权限修饰符一般放于所有修饰符之前,不同的权限修饰

C++返回值为对象时复制构造函数不执行怎么破

先说点背景知识,调用复制构造函数的三种情况: 1.当用类一个对象去初始化另一个对象时. 2.如果函数形参是类对象. 3.如果函数返回值是类对象,函数执行完成返回调用时. 在辅导学生上机时,有同学第3点提出异议.有教材上的例题为证: #include <iostream> using namespace std; class Point //Point 类的定义 { public: Point(int xx=0, int yy=0) { x = xx; //构造函数,内联 y = yy; } P

类的成员变量和属性描述

0x 01 .类的属性 property 类的属性即是通过@property声明的属性.属性是类型为objc_property的一个结构体.该结构体封装了属性的信息 比如属性的名字,属性的类型,属性的可读写,非原子/原子属性等. 1).获取一个类的属性列表方法:OBJC_EXPORT objc_property_t *class_copyPropertyList(Class cls, unsigned int *outCount)入参是一个类的class对象,一个是用于统计属性数量的整形数的地址

java怎么定义一个二维数组?

java中使用 [][] 来定义二维数组 定义数组时也可同时初始化 下面是一些例子float[][] numthree; //定义一个float类型的2维数组numthree=new float[5][5]; //为它分配5行5列的空间大小numthree[0][0]=1.1f; //通过下标索引去访问 1行1列=1.1long[][] numfive=new long[5][]; //定义一个long类型的不规则数组numfive[0]=new long[5]; //为第1行分配5列//定义d

postman 上一个接口的返回值作为下一个接口的入参

在使用postman做接口测试的时候,在多个接口的测试中,如果需要上一个接口的返回值作为下一个接口的入参,其基本思路是: 1.获取上一个接口的返回值 2.将返回值设置成环境变量或者全局变量 3.设置下一个接口的参数形式 列子: 存在两个接口(设置微信公众号的测试号的菜单栏的接口) 1.第一个接口用户获取access_token.https://api.weixin.qq.com/cgi-bin/token?三个参数如下. 2.第二个接口用户设置菜单栏. 在这两个接口中,我们需要将第一个接口返回的

当对函数的返回值有多种需求时(执行是否成功,及业务数据的返回值),可采用的方法

(1)bool+out (2)返回值为实体模式: public  class DiskResult    {        private bool successful;        private string result;        private string errorMessage; public bool Successful        {            get            {                return successful;