JAVA程序设计实验:6-2创建复数类

一. 其它(共1题,100分)

1. (其它)

编写一个完整的程序,从键盘任意输入两个复数,使用复数类Complex验证两个复数相加,如输入 1+2i和3+4i 相加产生一个新的复数 4+6i,输入 6+7i和8-10i 相加产生一个新的复数14-3i。复数类Complex必须满足如下要求:
(1)复数类Complex的属性有:
realPart :int型,代表复数的实数局部
imaginPart: int 型,代表复数的虚数局部
(2)复数类Complex的方法有:
Complex():构造函数,将复数的实部和虚部都置0.
Complex( int r,int i):构造函数,形参r为实部的初值,i为虚部的初值。
Complex  complexAdd(Complex a):将当前复数对象与形参复数对象相加,所得的结果仍是一个复数对象,返回给此方法的调用者.
String toString():把当前复数对象的实部、虛部组合成a+bi 的宇符串形式,其中a和b分别为实部和虛部的数据。

注意:该程序在eclipse中执行,在eclipse中需要创建两个源文件,一个Complex.java表示复数对象类;一个Test.java为主类,在主类中使用Complex类对复数对象进行求和操作。

执行效果如图所示:

捕获.PNG

Complex.java

---------------------------------------------------------------------

class Complex{


   private int realPart;


   private int imaginPart;


public Complex()


{


realPart = 0;


imaginPart = 0;


}


public Complex(int r, int i)


{


realPart = r;


imaginPart = i;


}


public Complex complexAdd(Complex a)


{


Complex b = new Complex();


b.realPart = realPart + a.realPart;


b.imaginPart = imaginPart + a.imaginPart;


return b;


}


public String toString()


{

	String str;

	if(imaginPart>=0){

		str=realPart + "+" + imaginPart + "i";

	}

	else

	{

		str=realPart +""+imaginPart + "i";

	}


return str;


}


}

---------------------------------------------------------------

Test.java

----------------------------------------------------------------

import java.util.Scanner;


public class Test {


public static void main(String args[]) {

Scanner reader=new Scanner(System.in); 

System.out.println("请输入第一个复数的实部:");

int cr=reader.nextInt();

System.out.println("请输入第一个复数的虚部:");

int ci=reader.nextInt();

Complex c1=new Complex(cr,ci);

System.out.println("输入的第一个复数为:"+c1.toString());

System.out.println("请输入第二个复数的实部:");

cr=reader.nextInt();

System.out.println("请输入第二个复数的虚部:");

ci=reader.nextInt();

Complex c2=new Complex(cr,ci);

System.out.println("输入的第二个复数为:"+c2.toString());




System.out.println(c1.toString()+"与"+c2.toString()+"的和为:"+c1.complexAdd(c2).toString());


  }


}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值