java课程设计-模拟科学计算器(DOC).docx

上传人:h**** 文档编号:26779531 上传时间:2022-07-19 格式:DOCX 页数:8 大小:14.97KB
返回 下载 相关 举报
java课程设计-模拟科学计算器(DOC).docx_第1页
第1页 / 共8页
java课程设计-模拟科学计算器(DOC).docx_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《java课程设计-模拟科学计算器(DOC).docx》由会员分享,可在线阅读,更多相关《java课程设计-模拟科学计算器(DOC).docx(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、java课程设计-模拟科学计算器(DOC) JAVA课程设计说明书 题目:模拟科学计算器 姓名: 学号: 班级:网络工程11-2 山东科技大学 2022年11月7日 目录 1 课设任务及要求 (3) 1.1课设任务 (3) 1.2设计要求 (3) 2 需求分析 (2) 2.1 设计背景 (2) 2.2 需求获取 (3) 2.3 程序功能图 (4) 3 设计思路 (4) 3.1 界面布局 (4) 3.2 类的定义 (5) 3.3变量的定义 (5) 4 详细设计 (6) 4.1整体概述 (6) 4.2 误操作处理 (7) 4.3流程图和结构图 (8) 5 系统调试 (11) 5.1 程序界面 (1

2、1) 5.2 运行界面 (11) 6 心得与体会 (15) 7 参考文献 (16) 8 附录 (16) 1 课设任务及要求 1.1课设任务: 要求:界面模拟Windows中的计算器程序。 实现基本数学运算、函数等功能:加、减、乘、除、阶乘、正弦、余弦和指数运算。 实现要点:添加相关组件并进行按钮事件处理。 要求提交Application和Applet两个版本的程序。 1.2设计要求 设计的java计算器应用程序可以完成加法、减法、乘法、除法和取余运算,和cos,sin,tan等三角函数功能以及阶乘和指数等运算,且有小数点、正负号、求倒数、退格和清零功能。具体可参考windows附件下的计算器

3、课程设计使用Eclipse4.2等作为程序编译和运行测试的开发平台,采用JDK-7u25作为java开发环境,使用Microsoft Office Visio 2022作为绘图工具。 认真按时完成课程设计报告,制作演讲PPT,积极报名上讲台向大家演示和讲解自己的程序。提交打印版的报告以及电子版的原稿和Application和Applet两个版本的程序代码。 2 需求分析 2.1 设计背景 本程序是老师提供的几个课程设计题目中比较中等的题目。要求实现模拟的科学计算器功能,主要包括加减乘除四则运算和阶乘,三角函数以及指数的运算。具体的功能我参考了Windows7下的计算机小程序,并根据其界面设计了

4、java小程序界面,根据其功能对自己设计的计算器小程序进行了功能的适当增加与修改。在实现了课程设计题目要求的基础上,自己又增添了对数函数,幂函数,三角函数,取余等我们常用到的功能比较简单的函数。由于本函数涉及的函数以及按键数目较多,故没有采用面向对象的设计方法,没有对每个功能封装成函数调用,而是针对每个按键的动作事件直接采用了算法的编写。最终实现了全部的功能,但是由于时间有限,许多功能没有坐到很到位的优化,或许还存在着许多了漏洞,欢迎老师和同学的批评指正,我一定会 不断完善。 2.2 需求获取 本程序的设计过程,按照题目的要求,我认真参考了Windows7下计算器小程序的运行界面与运行操作与结

5、果,对我自己设计的程序的需求展开了进一步的研究。主要得到以下几点需求: 1.必须实现题目要求的和Windows7下计算器下的基本功能,并能正确运行。 2.必须使程序具有清空,清除,退格和正负数,小数点的基本功能。 3.必须要修程序可以进行连续运算,即如“1+2+3+4,1*2+4-4”等连续运算 4.必须使用可视化界面,按键布局简单明了,使人一看就懂,直接可以上手操作。界面要做到简单明了,通俗易懂,和蔼可亲。 5.必须有用户错误操作,输入不规范的警告与提示,提醒用户正确操作。 6.程序必须经过严格的测试与运行,保证没有明显的BUG和程序崩溃状况,要经得起用户的长时间使用。 2.3 程序功能图

6、功能图如下: 3 设计思路 3.1界面布局 本应用程序继承自框架类(JFrame),采用BorderLayout边缘布局和GridLayout网格布局相结合的布局管理方式,将单行文本框加入到“North”区域,包含各种按钮的面板JPanel p按照网格布局的顺序加入到其他区域。将文本框放到界面上方,将 指数函数放到界面下方,将三角函数放到界面左边,将基本四则运算放到界面的右面,使得界面的整体布局合理整洁,易于上手。 3.2类的定义 本程序主要定义了一个主函数和三个类: public static void main(String args):程序的主函数,Application程序的主要实现标

7、志,调用上文中定义 的类 class C1:程序主类,定义了整个界面的布局,和针对每个按钮的动作监听,以及每个动作所对应的具体的操作, 计算的运行和输出主函数。 class jiecheng:定义了阶乘运算(fff)的算法实现。 class Mymath:定义了asinh、acosha、tanh三个Math.中不包含的三角函数及其算法实现 3.3变量的定义 字符串变量String a,c,s用来储存数字和符号以及运算结果。 整形变量flagdenghao,flagyunsuan,lastyunsuan Count变量countxiaoshudian用来统计小数点出现的次数 4 详细设计 4.1

8、.整体概述 首先,程序定义了三个类:一个主类,两个主类里调用的辅助类。分别实现,计算器主要功能的实现,阶乘算法的实现,和反三角函数算法的实现。 其次,对于C1主类,首先在框架JFrame下定义了每个触击式组件,即JButton命令式按钮。并采用了BorderLayout边缘布局和GridLayout网格布局相结合的布局管理方式。将文本框,Str1(数字运算),Str2(三角函数),Str3(反三角函数)和Str4(指数函数)合理的排布在整个框架下。 然后,定义了每个JButton命令式按钮代表的数字,符号和函数,并且通过public void actionPerformed(ActionEve

9、nt e) 函数定义了每个按钮对应的动作监听,从而确定了鼠标点击每个按钮时可以实现对应的不同的算法。 接下来,就是每个运算所对应的算法实现,这里以加法运算为例: 1.首先用户输入一个数字,程序用String s暂时储存,并通过JTexField()文本编辑框显示出来。 2.接着,用户按下“+”按钮,触发按钮事件,先判断是数 字或者是符号,当触发事件之前输入的是符号时“.”没有输入数字时,程序采用 Double.valueOf(),将输入的“.”进行强制类型转换成“0.”。当用户输入正常数字时,程序首先将s内的数据储存到a中,同时将a中的内容清空,以便输入加数,并再次储存到s中,并通过JTexF

10、ield()文本编辑框显示出来。 3.当用户按下“=”按钮时,程序首先进行判断是否flagyunsuan=0,当flagyunsuan=0是说明是第一次按“=”按钮,接下在判断“=”之前是否是空值或符号,当判断flagdenghao = ture的时候可以进行运算。将运算结果存入a中,并再次通过JTexField()文本编辑框显示出来。 4.接下来还要对运行的结果通过Double.valueOf()进行强制类型转换。因为储存数据的s和a都是String型变量,而要求的输出结果却是double类型的变量,所以要转换以后输出。 5.输出完毕以后,必须判断是否使用本次运算结果进行下一步的运算,如果是

11、的话则通过switch (lastyunsuan)来判断接下来需要进行的运算,再重复上面的步骤。 4.2.误操作处理 由于用户操作的不确定性,有时可能不会严格按照程序说明书进行对应的操作,经常会发生误操作。这便对程序的操作性要 求大大提高。这就要求程序做到以下几点: 1.程序不能因为操作失误而崩溃。 2.程序要可以给用户发出错误警报。 3.程序要可以对错误进行适当的修改。 而本程序经过反复误操作运行,已经可以保证程序不会因为误操作而发生崩溃。其次,本程序采用了Toolkit.getDefaultToolkit().beep()函数,可以使程序发出“beep”声音的警报。最后,本程序对一些显而易见的错误,比如输入小数时可以自动把用户输入的“.”强制转化为“0.”等。从而保证了,当遇到各种误操作的时候程序可以正常运行。 4.3.流程图和结构图 1.程序流程图 2.代码结构图

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 策划方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁