Java龚永罡---答案(5)

2019-01-03 18:01

Date date1=【代码6】 // 用timeOne做参数构造date1 Date date2=【代码7】 // 用timeTwo做参数构造date2 if(date2.equals(date1)) {

System.out.println(\两个日期的年、月、日完全相同\ }

else if(date2.after(date1)) {

System.out.println(\您输入的第二个日期大于第一个日期\ }

else if(date2.before(date1)) {

System.out.println(\您输入的第二个日期小于第一个日期\ }

long days=【代码8】//计算两个日期相隔天数

System.out.println(yearOne+\年\月\日和\

+yearTwo+\年\月\相隔\天\ } }

? 实验后的练习:

1. Calendar对象可以将时间设置到年、月、日、时、分、秒。请改进上面的程序,使用户输入的两个日期包括时、分、秒。

2. 根据本程序中的一些知识,编写一个计算利息(按天计算)的程序。从输入对话框输入存款的数目和起止时间。

3.处理大整数。

? 实验要求:

编写一个Java应用程序,计算两个大整数的和、差、积和商,并计算一个大整数的因子个数(因子中不包括1和大整数本身)。

? 程序运行效果示例:

程序运行效果如下图所示:

? 程序模板:

BigintegerExample

import java.math.*; class BigIntegerExample {

public static void main(String args[])

{ BigInteger n1=new BigInteger(\ n2=new BigInteger(\ result=null;

21

result=【代码1】//n1和n2做加法运算

System.out.println(\和:\ result=【代码2】//n1和n2做减法运算

System.out.println(\差:\ result=【代码3】//n1和n2做乘法运算

System.out.println(\积:\ result=【代码4】//n1和n2做除法运算

System.out.println(\商:\ BigInteger m=new BigInteger(\ COUNT=new BigInteger(\ ONE=new BigInteger(\ TWO=new BigInteger(\

System.out.println(m.toString()+\的因子有:\

for(BigInteger i=TWO;i.compareTo(m)<0;i=i.add(ONE)) { if((n1.remainder(i).compareTo(BigInteger.ZERO))==0) { COUNT=COUNT.add(ONE);

System.out.print(\ } }

System.out.println(\

System.out.println(m.toString()+\一共有\个因子\ } }

? 实验后的练习:

1. 编写程序,计算大整数的阶乘。

2. 编写程序,计算1+2+3…的前999999999项的和。

【结果】

将本次上机实验结果按照实验要求内容依次进行,填写实验目标、过程、结果。 【注意事项】

①实验报告要求每人提交一份,使用专门的报告纸,内容写全,包括实验名称、班级、姓名、同组人,试验日期、交报告日期等。

②报告不需要填写源代码,只要将完成情况和所有练习题结果写上就可以。 【思考题】

22

实验五 组件与事件处理

【目的】

①学习处理ActionEvent事件;

②学习处理ItemEvent事件和paint方法; ③学习使用布局类。 【内容】

1.算术测试。

? 实验要求:

编写一个算书测试小软件,用来训练小学生的算术能力。程序由3个类组成,其中Teacher类对象负责给出算术题目,并判断回答者的答案是否正确;ComputerFrame类对象负责为算术题目提供视图,比如用户可以通过ComputerFrame类对象提供的GUI界面看到题目,并通过该GUI界面给出题目的答案;MainClass是软件的主类。

? 程序运行效果示例:

程序运行效果如下图所示:

? 程序模板:

Teacher.java

public class Teacher { int numberOne,numberTwo; String operator=\ boolean right;

public int giveNumberOne(int n) { numberOne=(int)(Math.random()*n)+1; return numberOne; }

public int giveNumberTwo(int n)

{ numberTwo=(int)(Math.random()*n)+1;

return numberTwo; }

public String giveOperator() { double d=Math.random(); if(d>=0.5) operator=\ else

operator=\

return operator;

}

public boolean getRight(int answer) { if(operator.equals(\

{ if(answer==numberOne+numberTwo)

23

right=true; else

right=false;

}

else if(operator.equals(\ { if(answer==numberOne-numberTwo) right=true; else

right=false; }

return right;

}

}

ComputerFrame.java

import java.awt.*; import java.awt.event.*;

public class ComputerFrame extends Frame implements ActionListener { TextField textOne,textTwo,textResult; Button getProblem,giveAnwser; Label operatorLabel,message; Teacher teacher;

ComputerFrame(String s) { super(s);

teacher=new Teacher(); setLayout(new FlowLayout());

textOne=【代码1】 //创建textOne,其可见字符长是10 textTwo=【代码2】 //创建textTwo,其可见字符长是10 textResult=【代码3】 //创建textResult,其可见字符长是10 operatorLabel=new Label(\ message=new Label(\你还没有回答呢\ getProblem=new Button(\获取题目\ giveAnwser=new Button(\确认答案\ add(getProblem); add(textOne); add(operatorLabel); add(textTwo); add(new Label(\ add(textResult); add(giveAnwser); add(message);

textResult.requestFocus(); textOne.setEditable(false); textTwo.setEditable(false);

【代码4】//将当前窗口注册为getProblem的ActionEvent事件监视器

24

【代码5】//将当前窗口注册为giveAnwser的ActionEvent事件监视器 【代码6】//将当前窗口注册为textResult的ActionEvent事件监视器 setBounds(100,100,450,100); setVisible(true); validate();

addWindowListener(new WindowAdapter()

{ public void windowClosing(WindowEvent e) { System.exit(0); } } ); }

public void actionPerformed(ActionEvent e) { if(【代码7】) //判断事件源是否是getProblem { int number1=teacher.giveNumberOne(100); int number2=teacher.giveNumberTwo(100); String operator=teacher.givetOperator(); textOne.setText(\ textTwo.setText(\ operatorLabel.setText(operator); message.setText(\请回答\

textResult.setText(null);

}

if(【代码8】) //判断事件源是否是giveAnwser { String answer=textResult.getText(); try{

int result=Integer.parseInt(answer); if(teacher.getRight(result)==true) { message.setText(\你回答正确\ } else

{ message.setText(\你回答错误\ } }

catch(NumberFormatException ex)

{ message.setText(\请输入数字字符\ } }

textResult.requestFocus(); validate(); } }

MainClass.java

public class MainClass

25


Java龚永罡---答案(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:财经应用文写作第二版课后习题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: