计算器设计报告.docx

上传人:b****7 文档编号:15379893 上传时间:2023-07-04 格式:DOCX 页数:12 大小:167.41KB
下载 相关 举报
计算器设计报告.docx_第1页
第1页 / 共12页
计算器设计报告.docx_第2页
第2页 / 共12页
计算器设计报告.docx_第3页
第3页 / 共12页
计算器设计报告.docx_第4页
第4页 / 共12页
计算器设计报告.docx_第5页
第5页 / 共12页
计算器设计报告.docx_第6页
第6页 / 共12页
计算器设计报告.docx_第7页
第7页 / 共12页
计算器设计报告.docx_第8页
第8页 / 共12页
计算器设计报告.docx_第9页
第9页 / 共12页
计算器设计报告.docx_第10页
第10页 / 共12页
计算器设计报告.docx_第11页
第11页 / 共12页
计算器设计报告.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

计算器设计报告.docx

《计算器设计报告.docx》由会员分享,可在线阅读,更多相关《计算器设计报告.docx(12页珍藏版)》请在冰点文库上搜索。

计算器设计报告.docx

计算器设计报告

XX大学

本科生课程设计(实践)任务书、设计报告

(C++语言程序设计)

题目计算器的设计

学生姓名

指导教师

学院

专业班级

学生学号

计算机基础教学实验中心

2015年7月日

计算器的设计

1、计算器系统开发设计思想

根据课程设计的要求,我们的目的是用MicrosoftVisual

Studio2010完成CLR窗体应用程序,设计出一个计算或绘图类窗

口应用程序,要求:

功能:

1)用窗体及控件进行数据的输入和输出

2)输入方便和可靠。

3)结果正确。

界面设计

1)使用方便

2)操作简单

3)美观

通过本课程设计,提高我们所学C++语言程序设计基础综合运

用、设计、编程及动手能力,能够在已学的基础上自学地提高扩展自我知识的技能,掌握自我表达、书写组织和总结。

初步培养通过面向对象的思想解决问题的能力,熟悉软件开发过程,增强对相关专业知识的感性认识,掌握基本软件开发技能,提高应用所学知识在实践中发现问题、分析问题和解决问题的能力。

2、计算器系统功能及系统设计介绍

我选择的题目是设计一个科学计算器(包括三角函数、指数函数等等基本函数计算)的窗体应用程序。

系统设计过程:

a)创建项目:

在MicrosoftVisualStudio2010C#中,建立

一个新工程,创建一个新的对话框。

b)计算机界面设计:

1.向Forml中添加一个textbox和21个button按钮;

2.修改button按钮的text属性,如图所示:

private

void

button1_Click(

{

}

textBox1.Text

private

void

button2_Click(

{

textBox1.Text

}

private

void

button3_Click(

{

textBox1.Text

}

private

void

button4_Click(

{

textBox1.Text

}

private

void

button5_Click(

{

textBox1.Text

}

c)数字键及小数点代码设计:

objectsender,EventArgse)

=textBoxl.Text+"1"

objectsender,EventArgse)

=textBoxl.Text+"2";

objectsender,EventArgse)

=textBox1.Text+"3";

objectsender,EventArgse)

=textBox1.Text+"4";

objectsender,EventArgse)

=textBox1.Text+"5";

privatevoidbutton6_Click(objectsender,EventArgse)

 

textBoxl.Text=textBoxl.Text+"6";

}

privatevoidbutton7_Click(objectsender,EventArgse)

{

textBox1.Text=textBox1.Text+"7";

}

privatevoidbutton8_Click(objectsender,EventArgse)

{

textBox1.Text=textBox1.Text+"8";

}

privatevoidbutton9_Click(objectsender,EventArgse)

{

textBox1.Text=textBox1.Text+"9";

}

privatevoidbutton10_Click(objectsender,EventArgse)

{

textBox1.Text=textBox1.Text+"0";

}

privatevoidbutton11_Click(objectsender,EventArgse)

{

d)加减乘除算法的实现:

“+”将控件名为button12更名为“+”,并输入以下程序

privatevoidbutton12_Click(objectsender,EventArgse)

{

Buttonbtn=(Button)sender;

textBox1.Text=textBox1.Text+btn.Text

“-”将控件名为button13更名为“-”,并输入以下程序

privatevoidbutton13_Click(objectsender,EventArgse)

{

Buttonbtn=(Button)sender;

textBox1.Text=textBox1.Text+btn.Text

将控件名为button14更名为“x”,并输入以下程序:

privatevoidbutton14_Click(objectsender,EventArgse)

{

Buttonbtn=(Button)sender;

“/”将控件名为button15更名为“/”,并输入以下程序:

privatevoidbutton15_Click(objectsender,EventArgse)

Buttonbtn=(Button)sender;

textBox1.Text=textBox1.Text+btn.Text

}

e)三角函数等基本初等函数算法的实现:

“sinx”将控件名为button16更名为“sin”,并输入以下程序

privatevoidbutton16_Click(objectsender,EventArgse)

{

Buttonbtn=(Button)sender;

textBox1.Text=textBox1.Text+btn.Text

}

“cosx”将控件名为button17更名为“cos”,并输入以下程序

private

voidbutton17_Click(object

sender,EventArgse)

Buttonbtn=(Button)sender;

textBox1.Text=textBox1.Text+btn.Text

“tanx”将控件名为button18更名为“tan”,并输入以下程序

privatevoidbutton18_Click(objectsender,EventArgse)

{

Buttonbtn=(Button)sender;

textBox1.Text=textBox1.Text+btn.Text;

}

“lgx”将控件名为button19更名为“lg”,并输入以下程序:

privatevoidbutton19_Click(objectsender,EventArgse)

{

Buttonbtn=(Button)sender;

textBox1.Text=textBox1.Text+btn.Text

}

f)显示结果的算法实现

将控件名为button20更名为“二”,并输入以下程序:

privatevoidbutton20_Click(objectsender,EventArgse)

{

try

{

doubled_result;

intspace=s_txt」ndexOf('');

string

s1=

s_txt.Substring(0,space);

char

operation=

Convert.ToChar(s_txt.Substring((space+1),1));

string

s2=

=s_txt.Substring(space+3);

double

arg1

=Convert.ToDouble(s1);

double

arg2

=Convert.ToDouble(s2);

switch

(operation)

{

case'+':

d_result=argl+arg2;break;

case'-':

d_result=argl-arg2;break;

case'x':

d_result=argl*arg2;break;

case'/':

if(arg2==0)

{

//MessageBox.Show(”错误”);

thrownewApplicationException();

else

{

d_result=argl/arg2;

}

break;

default:

thrownewApplicationException();

}

textBox1.Text=d_result.ToString();

}

catch

{

doubled;

doublepi二Math.PI;

strings_txt=textBox1.Text;intspace=s_txt」ndexOf('',1);charoperation

Convert.ToChar(s_txt.Substring((0),strings2=s_txt.Substring(space+1);doublearg2=Convert.ToDouble(s2);

doublea=arg2*pi/180;switch(operation)

{

case's':

d=System.Math.Sin(a);

textBoxl.Text=d.ToString();break;

case'c':

d=System.Math.Cos(a);

textBox1.Text=d.ToString();break;

case't':

d=System.Math.Tan(a);

textBox1.Text=d.ToString();break;

caseT:

d=System.Math.Log10(arg2);textBox1.Text=d.ToString();break;

}

}

g)清除的算法实现

将控件名为button21更名为“del”,并输入以下程序

privatevoidbutton21_Click(objectsender,EventArgse)

textBox1.Text

h)调试与运行:

二—「站-°

3、计算器系统开发的体会

在刚开始做的时候,对于窗体应用程序这方面的操作是丝毫不懂后来听老师讲课,以及自己在实践书上找到相关的知识,才渐渐的知道做简易计算器的大概步骤,当时比较急于求成,所以一连做了两个工程文件都失败了,后来才渐渐放下浮躁的心,去查资料,问老师,咨询朋友,找代码,创新思路。

所以,在经历几次失败后,在朋友的提醒下,渐渐地,我知道了用C编写

科学计算器的程序更加简单明白,然后我开始寻找C#的代码,研究各个代码的含义,try…catch、indexof、substring等的用法,基本初等函数的用法(d=Math.Cos(f)),编写自己的计算器程序代码。

我的计算器并没有什么特别的特点,但是在基础功能实现了的情况下,我尽可能的实现一些我会做的科学运算,来提高这个计算器的价值。

在初期的时候,会因为按钮问题而出现无法写入的错误,因为数字类型不统一而无法实现计算功能,但是根据所给的错误一个一个的查找,并删除多余的按钮,强制转换数字类型,才得到了解决,在这个过程中我也明白了程序设计的严谨性。

在整个计算器程序设计中,我掌握了MicrosoftVisualStudio2010的用法,学会了CLR窗体应用程序代码及窗体的设计,对于之前学习的C++g序设计理解更加深入,再加上搜索,我得到了很多的关于C#的用法,深入学习了C#勺字符串、数组的使用,总之的确是获益匪浅。

虽然我设计的计算器功能上并不全,还存在着一些问题,但是在这个实践过程中,我的思考,动手能力得到了充分的利用,更加明白了要创新思路,这也是实践的目的。

通过实践加强对程序设计语言课程知识点的理解和掌握,培养对课程知识综合运用能力、实际分析问题能力及编程能力,养成良好的习惯。

通过实践能进一步领会程序设计的特点和应用,提高运用C++语言以

及面向对象知识解决实际问题的能力。

通过实践掌握用C++语

言编写面向对象的实用程序的设计方法,对面向对象方法和思想

增加感性的认识;学会利用C++程序设计语言编写出一些简单的Windows实用程序,切实提高面向对象的程序设计能力;通过实践学习了一些简单C#语言,为后续的相关课程的学习打下基础。

在整个实践的过程中,我也领悟到了以下几点:

基本功要过硬。

要认真严谨,一丝不苟,千万不能马虎,导致经常犯小错误。

要学会转换思维。

一条路走不通就挖掘其他方法,力求找到最简单方便的途径,避免一条路走到黑。

提咼自己找错纠错能力,通常错误总是那几种,多练习就熟练了。

要善于查找资料提高自己的资料查询能力,要善于利用网络来获得知识,获得帮助。

以后,我要提高自己对新知识的吸收能力,查阅资料,收集资料的能力,在学完C++S础后遇到CLR这种新的功能,我深深的体会到了学海无涯这四个字的含义,所以勤奋学习,学会学习才是我们实践要达到的最终目的。

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2