java程序设计报告.docx

上传人:b****3 文档编号:2979679 上传时间:2022-11-16 格式:DOCX 页数:16 大小:51.89KB
下载 相关 举报
java程序设计报告.docx_第1页
第1页 / 共16页
java程序设计报告.docx_第2页
第2页 / 共16页
java程序设计报告.docx_第3页
第3页 / 共16页
java程序设计报告.docx_第4页
第4页 / 共16页
java程序设计报告.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

java程序设计报告.docx

《java程序设计报告.docx》由会员分享,可在线阅读,更多相关《java程序设计报告.docx(16页珍藏版)》请在冰豆网上搜索。

java程序设计报告.docx

java程序设计报告

 

程序设计

课程设计报告

 

设计题目:

计算器模拟程序

专业班级:

信管

学号:

姓名:

指导教师:

郭春燕

时间:

2011.06.13-2011.06.24

 

摘要

计算器模拟程序课程项目是在JAVA学习过程一项要的内容,它涵盖了对JAVA内容学习的考察,同时通过实验项目,也加强了学生的动手能力。

进一步加深对Java语言的理解和掌握,把自己所学的理论知识运用到实际应用中去。

计算器模拟程序是一个小的计算算程序,包括日常我们用到的一些计算方法。

主要研究的是加法、减法、乘法、出发、三角函数、阶乘、以及次方等。

采用的是JAVA语言进行编写,引用JAVA自带数据库中swt包与math包中的一些构造类与函数类,然后自己构造板块和模型,从而完成自己的程序设计项目。

 

目录

一、课题概述3

1、课题任务3

2、课题目的3

3、课题要求4

二、设计思路及采取的方案4

1、总体设计思想4

2、实验方案4

三、实验结果16

四、总结体会16

1、遇到的难题16

2、一些应用中的技巧17

3、心得体会与收获17

 

一、课题概述

1、课题任务

自主设计与编写一个计算机模拟程序,实现一个简单的计算器程序,能够进行简单的数据运算。

(1)通过实践,进一步对JAVA程序语言的熟练;

(2)自主的设计,加强了学生的设计与动脑的过程;

(3)编写java源程序;

(4)完成程序设计课程设计报告;

2、课题目的

1、复习、巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握;

2、课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。

提高学生适应实际,实践编程的能力;

3、培养学生在项目开发中创新意识及能力;

4、通过编写一个基于JAVA的应用系统综合实例,来掌握Java语言编程技巧,熟练运用各部分知识。

3、课题要求

课程设计必须自己独立完成,严禁抄袭他人;

界面模拟Windows中的计算器程序。

实现基本数学运算、函数等功能:

加、减、乘、除、阶乘、正弦、余弦和指数运算;

(3)实现要点:

添加相关组件并进行按钮事件处理;

(4)界面要求:

用图形界面实现。

简单界面可参考图1。

图1

二、设计思路及采取的方案

1、总体设计思想

(1)在设计计算器之前构造好计算器的版块与模型;

(2)通过Calculator构造方法,设计好窗口的框架(面板,按钮,背景颜色,大小,并把相应的按钮添加监视器);

(3)编写主函数,创建计算器对象;

(4)编写加减乘除,三角函数,阶乘,次方等计算方法。

2、实验方案

importjava.awt.*;

importjava.awt.event.*;

importjavax.swing.*;

importjava.lang.Math.*;

publicclassCalculatorextendsFrameimplementsActionListener

{

String[]label={"1","2","3","+","sin","CE","4","5","6","-","cos","<--","7","8","9","*","y^x","1/x","0","+/-",".","/","n!

","="};

Button[]button;

Panelp1;

JTextFieldtext1;

StringBufferstr=newStringBuffer();

inta,b=0;

doublex=0,y=0;

booleanappend=false;

publicCalculator()//旆?

{

text1=newJTextField("0.",20);

text1.setHorizontalAlignment(JTextField.RIGHT);

text1.setEditable(false);

button=newButton[label.length];

p1=newPanel();

p1.setLayout(newGridLayout(4,6,1,1));//校校式

for(inti=0;i

{

button[i]=newButton(label[i]);//驯签诎钮

button[i].setForeground(Color.blue);//钮色

button[i].addActionListener(this);//每钮蛹

p1.add(button[i]);//钮拥签

}

Frameframe=newFrame("熊氏计算器");

//默贸杀呓绮?

frame.setLayout(newBorderLayout());

frame.add(BorderLayout.NORTH,text1);

frame.add(BorderLayout.CENTER,p1);

frame.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEventeve){System.exit(0);}});//录

frame.setSize(350,250);

frame.setLocation(200,200);

frame.setVisible(true);

}

publicstaticvoidmain(Stringargs[])

{

Calculatorxiong=newCalculator();

}

publicvoidactionPerformed(ActionEvente)

{

Strings=e.getActionCommand();//硕氐址

if(s.equals("+"))//鍔犳硶

{

str.setLength(0);

if(b==0)

{

a=b=1;

y=0;

text1.setText(""+x);

}

else

{

b=a;

a=1;

switch(b)

{

case1:

x+=y;

text1.setText(""+x);

break;

case2:

x-=y;

text1.setText(""+x);

break;

case3:

x*=y;

text1.setText(""+x);

break;

case4:

x/=y;

text1.setText(""+x);

break;

}

}

}

elseif(s.equals("-"))//鍑忔硶

{

str.setLength(0);

if(b==0)

{

a=b=2;

text1.setText(""+x);

}

else

{

b=a;

a=2;

switch(b)

{

case1:

x=x+y;

text1.setText(""+x);

break;

case2:

x=x-y;

text1.setText(""+x);

break;

case3:

x=x*y;

text1.setText(""+x);

break;

case4:

x=x/y;

text1.setText(""+x);

break;

}

}

}

elseif(s.equals("*"))//涔樻硶

{

str.setLength(0);

if(b==0)

{

a=b=3;

text1.setText(""+x);

}

else

{

b=a;

a=3;

switch(b)

{

case1:

x=x+y;

text1.setText(""+x);

break;

case2:

x=x-y;

text1.setText(""+x);

break;

case3:

x=x*y;

text1.setText(""+x);

break;

case4:

x=x/y;

text1.setText(""+x);

break;

}

}

}

elseif(s.equals("/"))//闄ゆ硶

{

str.setLength(0);

if(b==0)

{

a=b=4;

text1.setText(""+x);

}

else

{

b=a;

a=4;

switch(b)

{

case1:

x=x+y;

text1.setText(""+x);

break;

case2:

x=x-y;

text1.setText(""+x);

break;

case3:

x=x*y;

text1.setText(""+x);

break;

case4:

x=x/y;

text1.setText(""+x);

break;

}

}

}

elseif(s.equals("."))//灏忔暟鐐?

{

append=true;

if(text1.getText().trim().indexOf('.')!

=-1);

else

{

if(text1.getText().trim().equals("0"))

{

str.setLength(0);

text1.setText((str.append("0"+s)).toString());

}

else

{

text1.setText((str.append(s)).toString());

}

}

}

elseif(s.equals("0"))//鎸夐敭0

{

if(text1.getText().trim().equals("0.")){}

else

{

text1.setText(str.append(s).toString());

y=Double.parseDouble(text1.getText().trim());

}

}

elseif(s.equals("sin"))//姝e鸡

{

Stringtemp=text1.getText().trim();

doubledtemp=Double.parseDouble(temp);

text1.setText(""+Math.sin(dtemp));

}

elseif(s.equals("cos"))//浣欏鸡

{

Stringtemp=text1.getText().trim();

doubledtemp=Double.parseDouble(temp);

text1.s

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

当前位置:首页 > 高中教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1