程序设计java报告,程序设计语言_java_综合设计报告.doc

41528d3028836879cd698677c3999917.gif程序设计语言_java_综合设计报告.doc

1昆明理工大学计算中心程序设计语言(JAVA)课程综合设计报告课题名称制作DIY计算器学院冶金与能源工程专业班级热能与动力工程10级指导教师王樱子学号姓名小组自评成绩教师评定成绩201010202301XXX85一、问题描述(简单描述和说明要解决的问题)1如何设计一个计算器外壳,即按钮布局、输出框设置等。2用什么方法记录下输入的式子及如何输出。3怎样防止一个没意义的式子产生,如不能出现“”、“000”“0000”等没意义的式子。4有时候不能防止一个错误式子的产生,如除数为零、括号不完整、式子最后还有运算符等,由于在输入的时候不能判断,又怎么将错误提示抛出来。5不慎输入一个错误字符后怎么返回一步。6如何将式子计算出来。7计算后如何进行归零处理。二、问题分析及程序设计思路对待解决问题进行分析,并据此给出程序设计的思路,包括问题分解,程序设计的思路,涉及的类和功能模块及其算法说明1对于外壳设置,用NETBEANS中创建一个JFRAME窗体,采用BORDERLAYOUT布局和流布局就可以轻松对按钮、输出框等进行设置。2对于记录输入的式子,可以使用字符串型表达式记录下来,先声明一个字符串REMB,用以记录输入的字符串,每按一个按钮,采用REMB“”来记录输入的数字或运算符;用SETTEXT()将要输出的内容输出。3对于怎样防止一个没意义式子的产生,就需要大量的运用IF语句及FOR循环语句来判断。(1)对于防止“”的产生,应用CHARATREMBLENGTH()1方法,判断最后已有字符串末尾是否已有运算符。(2)对于防止“000”的产生,就需要找到已输入式子中最后一个运算符,运用REMBLASTINDEXOF(“运算符”)找到各运算符在式子中的最后位置,用一个数组记录下来,在用FOR语句将最大的索引MAX求出来,再用CHARAT(MAX)即可求出最后一个运算符是什么,然后判断接在运算符后的字符是否为“0”,若为零,则再按“0”号键是不做任何反应。(3)对于防止“0000”这样一个数中有多个小数点的产生,先用以上(2)的方法,找到最后一个运算符,再用STRINGSTREMBSUBSTRING(MAX)找出最后一个数,IF(STINDEXOF()1)判断最后一个数中是否有‘’。24(1)对于判断分母是否为零,先找出第一个除号的索引,可以这样求INTIREMBINDEXOF(”÷”,0),再找出从除号开始的第一个运算符,用INTFHREMBINDEXOF(“运算符”,I1)找出离第一个除号最近的各运算符索引,再用FOR语句找出离第一个除号最近的运算符索引MIN,再用语句STRINGNEWSTRINGREMBSUBSTRING(I1,MIN)找出第一除号后边的除数,用DOUBLENUMBDOUBLEPARSEDOUBLENEWSTRING将除数变为DOUBLE型,再判断NUMB是否为零,用IF(NUMB0)判断,若为零,在输出框中提示“存在除数为零”。(2)对于括号不完整,只需用FOR语句INTCT10FORINTSTART0START//GENBEGININITCOMPONENTSPRIVATEVOIDINITCOMPONENTS{JTEXTFIELD2NEWJAVAXSWINGJTEXTFIELDJPANEL2NEWJAVAXSWINGJPANEL5JTEXTFIELD3NEWJAVAXSWINGJTEXTFIELDJBUTTON22NEWJAVAXSWINGJBUTTONJPANEL3NEWJAVAXSWINGJPANELJBUTTON21NEWJAVAXSWINGJBUTTONJTEXTFIELD1NEWJAVAXSWINGJTEXTFIELDJPANEL1NEWJAVAXSWINGJPANELJBUTTON1NEWJAVAXSWINGJBUTTONJBUTTON6NEWJAVAXSWINGJBUTTONJBUTTON2NEWJAVAXSWINGJBUTTONJBUTTON11NEWJAVAXSWINGJBUTTONJBUTTON3NEWJAVAXSWINGJBUTTONJBUTTON16NEWJAVAXSWINGJBUTTONJBUTTON15NEWJAVAXSWINGJBUTTONJBUTTON18NEWJAVAXSWINGJBUTTONJBUTTON17NEWJAVAXSWINGJBUTTONJBUTTON14NEWJAVAXSWINGJBUTTONJBUTTON13NEWJAVAXSWINGJBUTTONJBUTTON20NEWJAVAXSWINGJBUTTONJBUTTON19NEWJAVAXSWINGJBUTTONJBUTTON12NEWJAVAXSWINGJBUTTONJBUTTON10NEWJAVAXSWINGJBUTTONJBUTTON9NEWJAVAXSWINGJBUTTONJBUTTON8NEWJAVAXSWINGJBUTTONJBUTTON7NEWJAVAXSWINGJBUTTONJBUTTON23NEWJAVAXSWINGJBUTTONJBUTTON5NEWJAVAXSWINGJBUTTONJTEXTFIELD4NEWJAVAXSWINGJTEXTFIELDJBUTTON4NEWJAVAXSWINGJBUTTONJTEXTFIELD2SETTEXT“JTEXTFIELD2“JTEXTFIELD3SETEDITABLEFALSEJTEXTFIELD3SETTEXT“\U6B22\U8FCE\U4F7F\U7528\UFF01“JBUTTON22SETTEXT“JBUTTON22“JPANEL3SETLAYOUTNEWJAVAAWTBORDERLAYOUTJBUTTON21SETBACKGROUNDNEWJAVAAWTCOLOR51,51,255JBUTTON21SETFOREGROUNDNEWJAVAAWTCOLOR255,0,0JBUTTON21SETTEXT“DEL“6SETDEFAULTCLOSEOPERATIONJAVAXSWINGWINDOWCONSTANTSEXIT_ON_CLOSESETBACKGROUNDNEWJAVAAWTCOLOR204,0,51SETRESIZABLEFALSEJTEXTFIELD1SETBACKGROUNDNEWJAVAAWTCOLOR255,255,255JTEXTFIELD1SETEDITABLEFALSEJTEXTFIELD1SETFOREGROUNDNEWJAVAAWTCOLOR51,0,102JTEXTFIELD1SETHORIZONTALALIGNMENTJAVAXSWINGJTEXTFIELDRIGHTJTEXTFIELD1SETTEXT“0“JTEXTFIELD1SETCARETCOLORNEWJAVAAWTCOLOR204,204,255JTEXTFIELD1SETDISABLEDTEXTCOLORNEWJAVAAWTCOLOR204,204,255GETCONTENTPANEADDJTEXTFIELD1,JAVAAWTBORDERLAYOUTNORTHJPANEL1SETLAYOUTNEWJAVAAWTGRIDLAY

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值