要求
编写一个复数类,包含实部和虚部属性,还有复数相加、相减以及复数的求模、输出复数字符串”a+bi”
代码
import java.util.Scanner;
import java.lang.Math;
public class 复数
{
int 实部;
int 虚部;
public void set(int 实部,int 虚部)
{
this.实部 = 实部;
this.虚部 = 虚部;
}
public void get()
{
Scanner se = new Scanner(System.in);
System.out.println("请分别输入复数的实部与虚部,用空格间隔:");
实部=se.nextInt();
虚部=se.nextInt();
}
public 复数 加法(复数 a, 复数 b)
{
复数 c;
c=new 复数();
c.实部=a.实部+b.实部;
c.虚部=a.虚部+b.虚部;
return c;
}
public 复数 减法(复数 a, 复数 b)
{
复数 c;
c=new 复数();
c.实部=a.实部-b.实部;
c.虚部=a.虚部-b.虚部;
return c;
}
public double 求模()
{
int a=实部;
int b=虚部;
double ans=a*a+b*b;
ans=Math.sqrt(ans);
return ans;
}
public void 输出()
{
System.out.println("复数:"+实部+"+"+虚部+"i");
}
public static void main(String[] args)
{
复数 a;
a=new 复数();
a.get();//第一种
System.out.println("复数a为");
a.输出();
复数 b;
b=new 复数();
b.set(3,5);//第二种
System.out.println("复数b为");
b.输出();
复数 d;
d=new 复数();
d.实部=7;
d.虚部=8;
System.out.println("复数d为");
d.输出();
复数 c;
c=new 复数();
c=c.加法(a,b);
System.out.println("复数a+b的结果为");
c.输出();
c=c.减法(d,b);
System.out.println("复数d-b的结果为");
c.输出();
System.out.println("复数a的模为"+a.求模());
System.out.println("复数b的模为"+b.求模());
System.out.println("复数d的模为"+d.求模());
}
}