c sharp 实验报告计算器设计.doc_第1页
c sharp 实验报告计算器设计.doc_第2页
c sharp 实验报告计算器设计.doc_第3页
c sharp 实验报告计算器设计.doc_第4页
c sharp 实验报告计算器设计.doc_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验2 计算器设计文档姓名: 梁姣 学号: 07220111 班级: 计本071 日期:20081009实验目的和要求1. 设计背景设计拥有简单的计算功能,方便计算简单的计算题。方便用户的使用。2. 设计功能具有一般计算功能,能进行基本的加减乘除运算,还具有求根号,倒数等功能。特点是能进行不同进制的运算和不同进制间的转换。3. 模块分解该计算器分为3个模块,分别是Textbox:显示区:显示数字和计算结果的功能button:计算区:提供运算符和数字,与用户交互进行运算radioButton:转换区: 用于进制之间的转换4. 设计界面标准型 科学型5. 按键定义Button1button29为1到F相应的数字键和运算符RadioButton14 用于各种进制之间的转换Textbox1 为显示区,显示输入和计算结果6. 其他定义 int command = 0; string stringbefore; /存储算数运算符按下之前的字符串。 string stringlast; /存储算数运算符按下之后的字符串。 long metadata; /进制转换时存储中间值。 double doublebefore = 0; /存储算数运算符按下之前的数字。 double doublelast = 0; /存储算数运算符按下之后的数字。 double result = 0; /存储运算之后的数字值。 bool flag = true ;/判断是否已经按过了算数运算符。实验内容u 设计思路与源程序普通型:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace 计算器实验 public partial class Form1 : Form public Form1() InitializeComponent(); private void label1_Click(object sender, EventArgs e) private void txt_Result_TextChanged(object sender, EventArgs e) private void button0_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button1_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button2_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button3_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button4_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button5_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button6_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button7_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button8_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button9_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text += btn.Text; private void btn_Add_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text = txt_Result.Text + + btn.Text + ; private void btn_Minus_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text = txt_Result.Text + + btn.Text + ; private void btn_Multiply_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text = txt_Result.Text + + btn.Text + ; private void btn_Divide_Click(object sender, EventArgs e) Button btn = (Button)sender; txt_Result.Text = txt_Result.Text + + btn.Text + ; private void btn_Clear_Click(object sender, EventArgs e) txt_Result.Text = ; private void btn_Result_Click(object sender, EventArgs e) double d_result; string s_txt = txt_Result.Text; int space = s_txt.IndexOf( ); 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 = arg1 + arg2; break; case -: d_result = arg1 - arg2; break; case *: d_result = arg1 * arg2; break; case /: if (arg2 = 0) throw new ApplicationException(); else d_result = arg1 / arg2; break; default: throw new ApplicationException(); txt_Result.Text = d_result.ToString(); private void 科学型ToolStripMenuItem_Click(object sender, EventArgs e) Form fm2 = new Form2(); fm2.Show(); private void 作者信息ToolStripMenuItem_Click(object sender, EventArgs e) Form fm3 = new Form3(); fm3.Show(); 科学型:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace 计算器实验 public partial class Form2 : Form public Form2() InitializeComponent(); private void lbl_Result_Click(object sender, EventArgs e) private void txt_Result_TextChanged(object sender, EventArgs e) private void rBtn16_CheckedChanged(object sender, EventArgs e) /进制 十六进制 this.btn_per.Enabled = false; this.btn_e.Enabled = false; this.btn_down.Enabled = false; this.btn_log.Enabled = false; this.btn_tan.Enabled = false; this.btn_sin.Enabled = false; this.btn_cos.Enabled = false; this.btn_Pi.Enabled = false; this.button9.Enabled = true; this.button8.Enabled = true; this.button7.Enabled = true; this.button6.Enabled = true; this.button5.Enabled = true; this.button4.Enabled = true; this.button3.Enabled = true; this.button2.Enabled = true; this.buttonA.Enabled = true; this.buttonB.Enabled = true; this.buttonC.Enabled = true; this.buttonD.Enabled = true; this.buttonE.Enabled = true; this.buttonF.Enabled = true; if (txt_Result.Text != ) int d1; string d2; string s_txt = txt_Result.Text; string s1 = s_txt.Substring(0); if (this.rBtn8.Checked)/十六进制转换八进制 int a = System.Convert.ToInt32(s1, 16); d1 = a; d2 = System.Convert.ToString(d1, 8); txt_Result.Text = d2.ToString(); else if (this.rBtn10.Checked)/十六进制转换十进制 int a = System.Convert.ToInt32(s1, 16); d1 = a; txt_Result.Text = d1.ToString(); else if (this.rBtn2.Checked)/十六进制转换二进制 int a = System.Convert.ToInt32(s1, 16); d1 = a; d2 = System.Convert.ToString(d1, 2); txt_Result.Text = d2.ToString(); private void rBtn10_CheckedChanged(object sender, EventArgs e) /进制 十进制 this.btn_down.Enabled = false; this.btn_log.Enabled = false; this.btn_tan.Enabled = false; this.btn_sin.Enabled = false; this.btn_cos.Enabled = false; this.btn_Pi.Enabled = false; this.button9.Enabled = true; this.button8.Enabled = true; this.button7.Enabled = true; this.button6.Enabled = true; this.button5.Enabled = true; this.button4.Enabled = true; this.button3.Enabled = true; this.button2.Enabled = true; this.buttonA.Enabled = false; this.buttonB.Enabled = false; this.buttonC.Enabled = false; this.buttonD.Enabled = false; this.buttonE.Enabled = false; this.buttonF.Enabled = false; if (txt_Result.Text != ) int d1; string d2; string s_txt = txt_Result.Text; string s1 = s_txt.Substring(0); if (this.rBtn8.Checked)/十进制转换八进制 double a = Convert.ToDouble(s1); d1 = (int)a; d2 = System.Convert.ToString(d1, 8); txt_Result.Text = d2.ToString(); else if (this.rBtn16.Checked)/十进制转换十六进制 double a = Convert.ToDouble(s1); d1 = (int)a; d2 = System.Convert.ToString(d1, 16); txt_Result.Text = d2.ToString(); else if (this.rBtn2.Checked)/十进制转换二进制 double a = Convert.ToDouble(s1); d1 = (int)a; d2 = System.Convert.ToString(d1, 2); txt_Result.Text = d2.ToString(); private void rBtn8_CheckedChanged(object sender, EventArgs e) /进制 八进制 this.btn_per.Enabled = false; this.btn_e.Enabled = false; this.btn_down.Enabled = false; this.btn_log.Enabled = false; this.btn_tan.Enabled = false; this.btn_sin.Enabled = false; this.btn_cos.Enabled = false; this.btn_Pi.Enabled = false; this.button9.Enabled = false; this.button9.Enabled = false; this.button7.Enabled = true; this.button6.Enabled = true; this.button5.Enabled = true; this.button4.Enabled = true; this.button3.Enabled = true; this.button2.Enabled = true; this.buttonA.Enabled = false; this.buttonB.Enabled = false; this.buttonC.Enabled = false; this.buttonD.Enabled = false; this.buttonE.Enabled = false; this.buttonF.Enabled = false; if (txt_Result.Text != ) int d1; string d2; string s_txt = txt_Result.Text; string s1 = s_txt.Substring(0); if (this.rBtn16.Checked)/八进制转换十六进制 int a = System.Convert.ToInt32(s1, 8); d1 = a; d2 = System.Convert.ToString(d1, 16); txt_Result.Text = d2.ToString(); else if (this.rBtn10.Checked)/八进制转换十进制 int a = System.Convert.ToInt32(s1, 8); d1 = a; txt_Result.Text = d1.ToString(); else if (this.rBtn2.Checked)/八进制转换二进制 int a = System.Convert.ToInt32(s1, 8); d1 = a; d2 = System.Convert.ToString(d1, 2); txt_Result.Text = d2.ToString(); private void rBtn2_CheckedChanged(object sender, EventArgs e) /进制 二进制 this.btn_per.Enabled = false; this.btn_e.Enabled = false; this.btn_down.Enabled = false; this.btn_log.Enabled = false; this.btn_tan.Enabled = false; this.btn_sin.Enabled = false; this.btn_cos.Enabled = false; this.btn_Pi.Enabled = false; this.button9.Enabled = false; this.button8.Enabled = false; this.button7.Enabled = false; this.button6.Enabled = false; this.button5.Enabled = false; this.button4.Enabled = false; this.button3.Enabled = false; this.button2.Enabled = false; this.buttonA.Enabled = false; this.buttonB.Enabled = false; this.buttonC.Enabled = false; this.buttonD.Enabled = false; this.buttonE.Enabled = false; this.buttonF.Enabled = false; if (txt_Result.Text != ) int d1; string d2; string s_txt = txt_Result.Text; string s1 = s_txt.Substring(0); if (this.rBtn8.Checked)/二进制转换八进制 int a = System.Convert.ToInt32(s1, 2); d1 = a; d2 = System.Convert.ToString(d1, 8); txt_Result.Text = d2.ToString(); else if (this.rBtn10.Checked)/二进制转换十进制 int a = System.Convert.ToInt32(s1, 2); d1 = a; txt_Result.Text = d1.ToString(); else if (this.rBtn16.Checked)/二进制转换十六进制 int a = System.Convert.ToInt32(s1, 2); d1 = a; d2 = System.Convert.ToString(d1, 16); txt_Result.Text = d2.ToString(); private void rBtnBlack_CheckedChanged(object sender, EventArgs e) /结果颜色 黑 this.txt_Result.ForeColor = Color.Black; private void rBtnBlue_CheckedChanged(object sender, EventArgs e) /结果颜色 蓝 this.txt_Result.ForeColor = Color.Blue; private void rBtnRed_CheckedChanged(object sender, EventArgs e) /结果颜色 红 this.txt_Result.ForeColor = Color.Red; private void button1_Click(object sender, EventArgs e) /数字键 1 Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button2_Click(object sender, EventArgs e) /数字键 2 Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button3_Click(object sender, EventArgs e) /数字键 3 Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button4_Click(object sender, EventArgs e) /数字键 4 Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button5_Click(object sender, EventArgs e) /数字键 5 Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button6_Click(object sender, EventArgs e) /数字键 6 Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button7_Click(object sender, EventArgs e) /数字键 7 Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button8_Click(object sender, EventArgs e) /数字键 8 Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button9_Click(object sender, EventArgs e) /数字键 9 Button btn = (Button)sender; txt_Result.Text += btn.Text; private void button0_Click(object sender, EventArgs e) /数字键 0 Button btn = (Button)sender; txt_Result.Text += btn.Text; private void buttonA_Click(object sender, EventArgs e) /数字键 A Button btn = (Button)sender; txt_Result.Text += btn.Text; private void buttonB_Click(object sender, EventArgs e) /数字键 B Button btn = (Button)sender; txt_Result.Text += btn.Text; private void buttonC_Click(object sender, EventArgs e) /数字键 C Button btn = (Button)sender; txt_Result.Text += btn.Text; private void buttonD_Click(object sender, EventArgs e) /数字键 D Button btn = (Button)sender; txt_Result.Text += btn.Text; private void b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论