java中复数四则运算的小程序

import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
//复数类的定义
class ComplexNumber {
    //定义复数里的实部与虚部;
    private double RealPart , ImaginPart;
    //缺省情况的构造方法;
    public ComplexNumber(){
        RealPart = 0;
        ImaginPart = 0;
    }
    //有形参的构造方法;
    public ComplexNumber(double r,double i){
        RealPart = r;
        ImaginPart = i;
    }
    //获取当前对象的实部;
    public  double getRealPart(){
        return RealPart;
    }
    //获取当前对象的虚部;
    public double getImaginPart(){
        return ImaginPart;
    }
    //修改当前对象的实部;
    public void setRealPart(double r){
        RealPart = r;
    }
    //修改当前对象的虚部;
    public void setImaginPart(double i){
        ImaginPart = i;
    }
    //当前的复数对象与形参复数相加方法;
    public ComplexNumber ComplexNumberAdd(ComplexNumber c){
        ComplexNumber result = new ComplexNumber();
        /*因为实部与虚部均以private修饰,所以要通过复数类中的setRealPart()与setImaginPart()方法来修改;
        *两复数的实部相加
        **/
        result.setRealPart(this.RealPart+c.getRealPart());
        //两复数的虚部相加;
        result.setImaginPart(this.ImaginPart+c.getImaginPart());
        return result;
    }
    //当前复数对象与一实数相加;
    public ComplexNumber ComplexNumberAdd(double c){
        ComplexNumber result = new ComplexNumber();
        //实部加上实数;
        result.setRealPart(this.RealPart+c);
        //虚部不变;
        result.setImaginPart(this.ImaginPart);
        return result;
    }
    //当前复数对象减去形参复数对象;
    public ComplexNumber ComplexNumberMinus(ComplexNumber c){
        ComplexNumber result = new ComplexNumber();
        //当前复数的实部减去形参对象的虚部;
        result.setRealPart(this.RealPart-c.getRealPart());
        //当前复数的虚部减去形参对象的虚部;
        result.setImaginPart(this.ImaginPart-c.getImaginPart());
        return result;
    }
    //当前复数对象减去某一实数;
    public ComplexNumber ComplexNumberMinus(double c){
        ComplexNumber result = new ComplexNumber();
        //复数对象的实部减去实数;
        result.setRealPart(this.RealPart-c);
        //复数对象的虚部不变;
        result.setImaginPart(this.ImaginPart);
        return result;
    }
    //当前复数对象乘以形参复数对象运算的方法;
    public ComplexNumber ComplexNumberMuti(ComplexNumber c){
        ComplexNumber result = new ComplexNumber();
        //当前复数与形参复数相乘后实部的结果;
        result.setRealPart(this.RealPart*c.getRealPart()-this.ImaginPart*c.getImaginPart());
        //当前复数与形参复数相乘后虚部的结果;
        result.setImaginPart(this.RealPart*c.getImaginPart()+this.ImaginPart*c.getRealPart());
        return result;
    }
    //当前复数与某一实数相乘的运算方法;
    public ComplexNumber ComplexNumberMuti(double c){
        ComplexNumber result = new ComplexNumber();
        result.setRealPart(this.RealPart*c);
        result.setImaginPart(this.ImaginPart*c);
        return result;
    }
    //当前复数对象除以某一复数的运算方法;
    public ComplexNumber ComplexNumberDivi(ComplexNumber c){
        ComplexNumber result = new ComplexNumber();
    //复数c中实部和虚部的平方和;
        double d = c.getRealPart()*c.getRealPart()+c.getImaginPart()*c.getImaginPart();
        result.setRealPart((this.RealPart*c.getRealPart()+this.ImaginPart*c.getImaginPart())/d);
        result.setImaginPart((this.ImaginPart*c.getRealPart()-this.RealPart*c.getImaginPart())/d);
        return result;
    }
    //将当前的复数对象以字符串的形式表示
    public String toString(){
        return ""+this.RealPart+"+"+this.ImaginPart+"i";
    }
}
//复数的四则运算在Applet程序的实现;
public class ComplexNumberDemo extends Applet implements ActionListener{
    //定义a、b、c、d四个文本框分别存储复数下x、y的实部与虚部;
    TextField a,b,c,d;
    Label title;
    //参加运算的复数对象x、y运算结果result的定义;
    ComplexNumber x,y,result;
    Button bu;
    //定义一个选择菜单,用以选择运算方法(加、减、乘、除);
    Choice ch;
    //applet的初始化过程;
    public void init(){
        a = new TextField(5);
        b = new TextField(5);
        c = new TextField(5);
        d = new TextField(5);
        ch = new Choice();
        ch.add("加");
        ch.add("减");
        ch.add("乘");
        ch.add("除");
        bu = new Button("确定");
        title = new Label("请输入两个复数:");
        add(title);
        add(a);
        add(new Label("+"));
        add(b);
        add(new Label("i"));
        add(ch);
        add(c);
        add(new Label("+"));
        add(d);
        add(new Label("i"));       
        add(bu);
        bu.addActionListener(this);
    }
    //触发事件的处理过程;
    public void actionPerformed(ActionEvent e){
        //两复数对象的初始化;
        x = new ComplexNumber(Double.parseDouble(a.getText()),Double.parseDouble(b.getText()));
        y = new ComplexNumber(Double.parseDouble(c.getText()),Double.parseDouble(d.getText()));
        //ch.getSelectedIndex()方法获取选择菜单中选中的菜单的索引(该索引以0开始计算);
        //捕获选择菜单中的运算方法,并调用相应的运算方法;
        switch(ch.getSelectedIndex()){
        case 0:result = x.ComplexNumberAdd(y);
                  break;
        case 1:result = x.ComplexNumberMinus(y);
                  break;
        case 2:result = x.ComplexNumberMuti(y);
                  break;
        case 3:result = x.ComplexNumberDivi(y);
                  break;
        default:break;
        }
        repaint();
    }
    public void paint(Graphics g){
        //运算结果的显示;
        if(x!=null&y!=null)
        g.drawString(""+ch.getSelectedItem()+"运算的结果为:"+result, 10, 100);
    }
}
//<applet code = "ComplexNumberDemo.class" width = 800 height = 500></applet>

转载请声明出处

 
好的,下面我来为你介绍一下如何进行图书管理系统的数据库课程设计。 首先,我们需要确定系统主要功能,包括图书信息管理、读者信息管理、借阅管理、归还管理、逾期罚款管理等。 然后,我们需要设计数据库的表结构。针对上述功能,我们可以设计以下表: 1. 图书信息表(Book):包括图书编号、图书名称、作者、出版社、出版日期、价格、简介等字段。 2. 读者信息表(Reader):包括读者编号、姓名、性别、联系方式、借书数量等字段。 3. 借阅信息表(Borrow):包括借阅编号、读者编号、图书编号、借阅日期、归还日期、借阅状态(已借/已还)等字段。 4. 逾期罚款表(Fine):包括逾期编号、读者编号、逾期天数、罚款金额等字段。 接下来,我们需要确定表之间的关系,如下: 1. 图书信息表与借阅信息表是一对多的关系,即一本图书可以被多个读者借阅,但一个借阅记录只对应一本图书。 2. 读者信息表与借阅信息表是一对多的关系,即一个读者可以借阅多本图书,但一个借阅记录只对应一个读者。 3. 借阅信息表与逾期罚款表是一对一的关系,即一个借阅记录只对应一个逾期罚款记录。 最后,我们需要进行数据的插入、查询、修改、删除等操作,以验证数据库设计的正确性和可行性。 以上就是图书管理系统的数据库课程设计基本流程,希望能对你有所帮助。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值