java作业:复数的加减法

设计一个类Complex,用于封装对复数的下列操作:
1.一个带参数的构造函数,用于初始化复数成员
2.一个不带参数的构造函数,调用代参数的构造函数完成对复数成员的初始化。
3. 实现两个复数的加法,减法的静态方法和实例方法。
4.以复数的标准形式:x+iy 输出此复数
5. 写两个函数,分别获得复数的实部getReal(),getImage()和虚部。

  

代码:

/**
 * @ClassName: Complex
 * @Description: 封装对复数的操作
 * @author 楚雅枫
 * @date 2013-10-17 下午8:12:53
 * 
 */


public class Complex {
int real;// 实部
int image;// 虚部


// 带参构造函数
Complex(int real, int imag) {
this.real = real;
this.image = imag;
}


// 不带参构造函数
Complex() {
this(1, 1);
}


// 获得复数的实部
int getReal() {
return real;
}


// 获得复数的虚部
int getImage() {
return image;
}


// 设置复数的实部
void setReal(int real) {
this.real = real;
}


// 设置复数的虚部
void setImage(int image) {
this.image = image;
}


// 以复数的标准形式:x+yi 输出此复数
void print() {
if (image >= 0) {
System.out.println(real + "+" + image + "i");
} else {
int ima = -image;
System.out.println(real + "-" + ima + "i");
}


}


// 实例方法 加法
Complex add(Complex com) {
int reala = com.getReal();
int imagea = com.getImage();
int newreal = real + reala;
int newimage = image + imagea;
Complex result = new Complex(newreal, newimage);
return result;
}


// 实例方法 减法
Complex sub(Complex com) {
int reala = com.getReal();
int imagea = com.getImage();
int newreal = real - reala;
int newimage = image - imagea;
Complex result = new Complex(newreal, newimage);
return result;
}

//实例方法 加法
public static Complex sta_add(Complex coma,Complex comb){
Complex result = coma.add(comb);
return result;
}

//实例方法 减法
public static Complex sta_sub(Complex coma,Complex comb){
Complex result = coma.sub(comb);
return result;
}
}


测试类:



/**
 * @ClassName: MainClass
 * @Description: 测试类
 * @author 楚雅枫
 * @date 2013-10-17 下午9:10:04
 * 
 */


public class MainClass {


/** 
* @Title: main 
* @Description: 测试
* @param @param args    设定文件 
* @return void    返回类型 
* @throws 
*/


public static void main(String[] args) {
// TODO Auto-generated method stub
        Complex complexa = new Complex(2,3);
        Complex complexb = new Complex();
        
        Complex resulta = complexa.add(complexb);
        Complex resultb = Complex.sta_sub(complexa, complexb);
        
        resulta.print();
        resultb.print();
        
}


}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值