JAVA课程设计.doc

上传人:本田雅阁 文档编号:2510010 上传时间:2019-04-04 格式:DOC 页数:17 大小:209.52KB
返回 下载 相关 举报
JAVA课程设计.doc_第1页
第1页 / 共17页
JAVA课程设计.doc_第2页
第2页 / 共17页
JAVA课程设计.doc_第3页
第3页 / 共17页
JAVA课程设计.doc_第4页
第4页 / 共17页
JAVA课程设计.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《JAVA课程设计.doc》由会员分享,可在线阅读,更多相关《JAVA课程设计.doc(17页珍藏版)》请在三一文库上搜索。

1、一、课程设计目的本课程设计的目标就是要达到理论与实际应用相结合,提高学生组织数据及编写大型程序的能力,并培养基本的、良好的程序设计技能以及合作能力。设计中要求综合运用所学知识,上机解决一些与实际应用结合紧密的、规模较大的问题,通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握数据结构和算法设计技术,掌握分析、解决实际问题的能力。通过这次设计,要求在数据结构的逻辑特性和物理表示、数据结构的选择和应用、算法的设计及其实现等方面,加深对课程基本内容的理解。同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。二、课程设计内容简单计算器题目描述使用Java的

2、GUI图形用户界面编程设计并编写一个计算器程序,用户可以通过鼠标或者键盘操作输入参加运算的的数值和运算符,要求能进行加、减、乘、除等混合运算。基本要求(1)实现加、减、乘、除的双目单类别的基础运算;(2)实现加、减、乘、除的多目多类别的混合运算。(3)实现三角函数(sin., cos, tan)运算。(4)实现幂运算(Xn),方根运算()。实现提示GUI编程 Component的事件响应。三、课程设计过程1需求分析使用Java的GUI图形用户界面编程设计并编写一个计算器程序,用户可以通过鼠标或者键盘操作输入参加运算的的数值和运算符,要求能进行加、减、乘、除等混合运算。2概要设计(1) 输入的形

3、式和输入值的范围;从文本域中输入,输入值的范围2.147483896471E122)输出的形式;从文本域中输出,字符串的形式输出(3) 程序所能达到的功能; 1 实现加、减、乘、除的双目单类别的基础运算;2 实现加、减、乘、除的多目多类别的混合运算。3 实现三角函数(sin., cos, tan)运算。4 实现幂运算(Xn),方根运算()。(4) 测试数据:包括正确的输入及其输出结果和含有错误的输入及其输出结果。3详细设计实现概要设计中定义的所有的数据类型,对每个操作给出伪码算法。对主程序和其他模块也都需要写出伪码算法。class ComputerPad extends Frame imple

4、ments ActionListener NumberButton numberButton; OperationButton oprationButton; Button 小数点按钮,正负号按钮,退格按钮, 求倒数按钮,等号按钮,清零按钮, 正弦按钮,余弦按钮,正切按钮; Panel panel; JTextField resultShow; String 运算符号=+,-,*,/,n; LinkedList 链表; boolean 是否按下等号=false;public ComputerPad()(伪码算法)public void actionPerformed(ActionEvent e

5、) (伪码算法)public static void main(String args)(伪码算法)4调试分析求三角函数cos90的时候有问题,后来设置了条件限制就可以了5用户使用说明可根据需要进行简单的运算:1)/:表示除号,进行两个数的相除运算。2:n:表示开根号,将一个数进行开根号运算。3)*:表示乘号,进行两个数的相乘运算。4)1/x:求一个数的倒数。5)-:表示减号,进行两个数的相减运算。6)+:表示加号,进行两个数的相加运算。7 退格:清除一个字符。8)清零:全部清零。9):实现幂运算6附录程序代码 import java.awt.*;import java.awt.event.*

6、;import javax.swing.*;import javax.swing.border.*;import java.lang.Math.*;import java.util.LinkedList;import java.text.NumberFormat;import org.eclipse.wb.swing.FocusTraversalOnArray; class ComputerPad extends Frame implements ActionListener NumberButton numberButton; OperationButton oprationButton;

7、Button 小数点按钮,正负号按钮,退格按钮, 求倒数按钮,等号按钮,清零按钮, 正弦按钮,余弦按钮,正切按钮; Panel panel; JTextField resultShow; String 运算符号=+,-,*,/,n; LinkedList 链表; boolean 是否按下等号=false; public ComputerPad() super(计算器); 链表=new LinkedList(); numberButton=new NumberButton10; for(int i=0;i=9;i+) numberButtoni=new NumberButton(i); numb

8、erButtoni.addActionListener(this); oprationButton=new OperationButton6; for(int i=0;i=1) num=num.substring(0,num.length()-1); 链表.set(0,num); resultShow.setText(num); else 链表.removeLast(); resultShow.setText(0); else if(链表.size()=3) String num=(String)链表.getLast(); if(num.length()=1) num=num.substrin

9、g(0,num.length()-1); 链表.set(2,num); resultShow.setText(num); else 链表.removeLast(); resultShow.setText(0); else if(e.getSource()=正负号按钮) if(链表.size()=1) String number1=(String)链表.getFirst(); try double d=Double.parseDouble(number1); d=-1*d; String str=String.valueOf(d); 链表.set(0,str); resultShow.setTe

10、xt(str); catch(Exception ee) else if(链表.size()=3) String number2=(String)链表.getLast(); try double d=Double.parseDouble(number2); d=-1*d; String str=String.valueOf(d); 链表.set(2,str); resultShow.setText(str); catch(Exception ee) else if(e.getSource()=求倒数按钮) if(链表.size()=1|链表.size()=2) String number1=(

11、String)链表.getFirst(); try double d=Double.parseDouble(number1); d=1.0/d; String str=String.valueOf(d); 链表.set(0,str); resultShow.setText(str); catch(Exception ee) else if(链表.size()=3) String number2=(String)链表.getLast(); try double d=Double.parseDouble(number2); d=1.0/d; String str=String.valueOf(d)

12、; 链表.set(0,str); resultShow.setText(str); catch(Exception ee) else if(e.getSource()=正弦按钮) if(链表.size()=1|链表.size()=2) String number1=(String)链表.getFirst(); try if(Double.parseDouble(number1)/90%2=0) resultShow.setText(0); else double d=Double.parseDouble(number1)*Math.PI/180; d=Math.sin(d); String s

13、tr=String.valueOf(d); 链表.set(0,str); resultShow.setText(str); catch(Exception ee) else if(链表.size()=3) String number2=(String)链表.getLast(); try double d=Double.parseDouble(number2)*Math.PI/180; d=Math.sin(d); String str=String.valueOf(d); 链表.set(0,str); resultShow.setText(str); catch(Exception ee) e

14、lse if(e.getSource()=余弦按钮) if(链表.size()=1|链表.size()=2) String number1=(String)链表.getFirst(); try if(Double.parseDouble(number1)/90%2=1) resultShow.setText(0); else double d=Double.parseDouble(number1)*Math.PI/180; d=Math.cos(d); String str=String.valueOf(d); 链表.set(0,str); resultShow.setText(str); catch(Exception ee) else if(链表.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1