好文档 - 专业文书写作范文服务资料分享网站

java计算器程序设计报告

天下 分享 时间: 加入收藏 我要投稿 点赞

JAVA课程设计之计算器设计报告含源代码|计算机数据库课程设计|精品课程网站设计|课程设计网报告总结心得本计算器可以进行简单的四则运算(加、减、乘、除)但仅限于十进制下,还可以进行(八进制,十进制,十六进制)之间的相互转换,八进制最多可以输入19位数,十进制最多可以输入18位数,十六进制最多可以输入14位数,backspace表示退格, clear表示初始化,在window下直接运行()即可,界面为灰白对称。 题 目: 计算器 目 录 1. 摘 要 2. 概要设计 3. 详细设计 4. 测试分析 5. 参考文献 一、摘 要

本计算器可以进行简单的四则运算(加、减、乘、除)但仅限于十进制下,还可以进行(八进制,十进制,十六进制)之间的相互转换,八进制最多可以输入19位数,十进制最多可以输入18位数,十六进制最多可以输入14位数,backspace表示退格, clear表示初始化,在window下直接运行()即可,界面为灰白对称。 二、概要设计

(1) 自定义类说明

********************************************************** * 类名: This_number_too_big *

* 作用: 自定义的异常类,用来处理计算结果溢出 * * 继承的父类: Exception类 * * 实现的接口: 没有 *

********************************************************** class This_number_too_big extends Exception {

}ength();harAt(0)=='0'&& ().length()==1) ;

import

class This_number_too_big extends Exception {};

static Button btequ=new Button(\ static Button btadd=new Button(\ static Button btsub=new Button(\ static Button btmul=new Button(\ static Button btdev=new Button(\ static Button btA=new Button(\ static Button btB=new Button(\ static Button btC=new Button(\ static Button btD=new Button(\ static Button btE=new Button(\ static Button btF=new Button(\

static Checkbox ckb8=new Checkbox(\八进制\

static Checkbox ckb10=new Checkbox(\十进制\ static Checkbox ckb16=new Checkbox(\十六进制\ static Button btc=new Button(\ static Button btt=new Button(\ public int number=0,length=18; .\ ; ; ;

(new Font(\ (14,33,216,40); (lab);

CheckboxGroup grp=new CheckboxGroup(); (grp); (grp); (grp);

(14,75,55,25); (69,75,55,25); (124,75,65,25); (false); (true); (false); (ckb8); (ckb10); (ckb16);

(14,140,120,150); (144,140,40,150); (14,100,170,36); (190,100,40,190); (bt7); (bt8); (bt9); (bt4); (bt5); (bt6); (bt1); (bt2); (bt3); (bt0); (btdot); (btequ); (btadd); (btsub); (btmul);

(btdev); (btt); (btc); (btA); (btB); (btC); (btD); (btE); (btF); (false); (false); (false); (false); (false); (false); (pnl1); (pnl2); (pnl3); (pnl4); (false); (null); (240,300 ); (\计算器\ (true);

(mainFrame); (mainFrame); (mainFrame); ength(); }

if(length==14) { (goto_10(),16L)); (goto10_8()));

number=().length(); }

ength();}

if(length==14) { (goto_10(),16L)); number=().length();} ength();}

if(length==19) { (goto_10(),8L)); (goto10_16()));

number=().length();} harAt(0); switch (ch)

{ case 'c': {(\number=0; mark='n'; Refresh=false;}break;harAt(0)=='0'&& ().length()==1)

break;

if(number{number++;()+ch);} else break; } break;

case 'A': enter(); break; case 'B': enter(); break; case 'C': enter(); break; case 'D': enter(); break; case 'E': enter(); break; case 'F': enter(); break;

case '.': {if(Refresh==true) {(\ if().indexOf('.')== -1) {number++;()+ch);} else break; }

break;

case 'b': {if(number==0) break; else

{if(--number==0) {(\ else

{if (number!=1) ().substring(0,number)); else

().charAt(0)));} }

}break;

case '+': try { js();}

catch(This_number_too_big e) {(\

Refresh=false; \ != -1));

lg=(str);!= -1)); lg=(str); while (lg>=j) { ch=lg%j; st=(ch)+st; lg=lg/j; }

st=(lg)+st; return st;

}harAt(0)=='0'&& ().length()==1)

ength();ength();

}//end answer() method

//--------------------------- }//end class Jsp2003 4. 测试分析

(1)程序运行情况:

程序正常的响应按钮事件,输入的数值长度受变量length的限定,进行混合四则运算的时候,结果如果不是很大,可以正常显示,但如果结果很大,就可能采用科学记数方式,这样带来了进制转换时的麻烦,需要特殊的处理科学记数里的E ,当结果太大的时候,有可能超出可能表示的最大值,(结果溢出),这个时候就要对结果进行必要的异常处理,我在输出结果的方法内设置if 语句,如果结果大于某一个值就抛出一个This_number_too_big 类型的类,再使用try-catch,捕捉输出结果的方法抛出的异常对象。然后进行,重制归零的处理。

(2)程序异常处理:

当结果超出时,将抛出一个This_number_too_big 类的异常对象,这个是我自定义的一个异常类它继承自Exception 类,然后使用try-catch去捕捉这个异常,异常的处理如下: try

{ js();}

catch(This_number_too_big e) {

(\ number=0; mark='n';

Refresh=false;

\

} //如果出现异常则初始化效果如同clear键

java计算器程序设计报告

JAVA课程设计之计算器设计报告含源代码|计算机数据库课程设计|精品课程网站设计|课程设计网报告总结心得本计算器可以进行简单的四则运算(加、减、乘、除)但仅限于十进制下,还可以进行(八进制,十进制,十六进制)之间的相互转换,八进制最多可以输入19位数,十进制最多可以输入18位数,十六进制最多可以输入14位数,backspace表示退格,clear表示初始化,在window下直接运行()即可
推荐度:
点击下载文档文档为doc格式
0l541728ua6ksx797jw59jajr88ky400wu4
领取福利

微信扫码领取福利

微信扫码分享