当前位置:文档之家› 计算器设计步骤2

计算器设计步骤2

计算器设计步骤2
计算器设计步骤2

计算器设计步骤

第一部分界面设计

一、新建项目,在缺省包新建“JFrame窗体”

二、选择“源”标签,在以下代码复制到程序的第一行

import java.awt.*;

import javax.swing.*;

import java.math.*;

三、将以下代码复制到构造函数中

try

{ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeel ClassName());

} catch (Exception e) {

}

代码的功能是使窗体的外观和windows的一样

四、设置窗体的属性

1、用鼠标调整窗体的大小与计算器大小相近

2、titile=“计算器”

3、iconImage为用户代码,代码为“Form.

setIconImage(Toolkit.getDefaultToolkit().getImage("图标.jpg"));”

4、maxmizedBounds=[0,0,265,275]

5、minimumSize=[265,275]

6、resizable=null

7、将“图标.jpg”文件复制到项目所在文件夹

8、将窗体的布局设为null

五、设置菜单

1、选择“组件面板”的“菜单栏”,拖到窗体中。

2、选择菜单栏的菜单名(File,Edit),编辑文本,将菜单名改为计算

器的菜单名(编辑(V)、查看(E)、帮助(H)),修改菜单名的属性为“宋体12普通”

3、设置菜单“编辑(V)”的属性mnemonic为用户代码,代码为

“jMenu1.setMnemonic(java.awt.event.KeyEvent.VK_E);”其他两个菜单名以此类推

4、再拖到组件面板的“菜单项”到每一个菜单,并修改菜单项的

名字

六、设计文本框

1、从组件面板拖一个“文本字段”控件到窗体,调整它的位置和

尺寸X=10,y=10,宽度=240,高度=30(参考)

2、设置horizontalAlignment=RIGHT

3、设置text=0.

七、设计面板

1、从组件面板拖一个“面板”到窗体,调整它的位置和尺寸X=53,y=45,宽度=200,高度=30(参考)

2、设计面板的布局为网格布局,布局的属性设置为“3列,1行,水平间距为5”

3、从组件面板拖到3个按钮到该面板

4、选择3个按钮,设置它们的属性为

Forground=[255,0,0]

Margin=[0,0,0,0]

以及各自的text属性

八、设计标签

1、从组件面板拖一个标签到窗体,调整它的位置和尺寸

X=12,y=45,宽度=30,高度=30

2、设计标签属性

Border=柔和斜面边框(类型为降低的)

九、其他的控件大家可以仿照上述步骤做。

第二部分代码设计

一、定义成员变量

Boolean sf;//用来表示计算器是否处于初始状态

BigInteger num1, num2;//num1表示文本框当前的数,num2表示在后台的已经进行了运算后的数

Boolean equalkey = false;//用来表示是否按过等号键

int c = 0;//没有按运算符时c为0,按了运算符后c的值改变二、构造函数设计

在构造函数中复制以下代码,注意BigInteger类是将字符串转换为大整型。

sf = true;//表示一开始是计算器的初始状态

num1 = new BigInteger(new String("0"));

num2 = num1;

try {

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassNa me());

} catch (Exception e) {

}

三、数字键设计

数字键有两种情况,一是初始状态,输入的数字直接显示到文本框中;二是非初始状态,输入的数字显示到文本框中原有的数字后面。第一种情况又有两种子状态,一是输入的是“0”,此时文本框显示“0.”,并且初始状态不变。二是输入的是非“0”的数字,此时文本框显示该数字,并且初始状态改变。

下面是流程图

将以下pressNum(Jbutton b)方法的代码复制到程序中,在每个数字键的事件代码中调用该方法

提示:

读文本框中的内容代码为jt.getText();(jt为文本框的名字)

文本框写入内容代码为jt.setText(s);(s为写入的字符串)

大整型的加代码为num2=num2.add(num1);

大整型的减代码为num2 = num2.subtract(num1);

大整型的乘代码为num2 = num2.multiply(num1);

大整型的除代码为num2 = num2.divide(num1);

void pressNum(JButton b) {

String s;

s = b.getActionCommand();//s为所按数字键上的字符

//请按流程图设计代码

}

四、清除键设计

1、将文本框中的文字改为“0.”

2、调用回到初始状态方法。

回到初始状态方法代码如下,将它复制到程序中,并补充完整。void beginstate() {

num1 = //

num2 =//

sf = //

c = //

equalkey =//

}

五、运算符键设计

当初始状态时,按运算符键,不做任何运算。当不是初始状态时,按运算符键,不同的运算符C的值不一样(本程序的运算不是在输入运算符后进行,而是在输入了数字以后)。

提示:将num2的值显示到文本框中的代码为:jT.setText(num2.toString());

void pressOperator(JButton b) {

String s;

s = b.getActionCommand();

//根据流程图将代码补齐

}

}

六、等号键的设计

等号键的代码如果完全按照windows计算器的比较复杂,我们设计简单点,就按下面流程图来设计,代码直接写到等号键按钮事件中即可,不用再设计方法了。

C++ 科学计算器-课程设计报告

DONGFANG COLLEGE,FUJIAN AGRICULTURE AND FORESTRY UNIVERSITY 课程名称:堆栈计算器 系别:计算机 年级专业:11级计算机科学与技术 学号:1150303040 姓名:蔡新云 任课教师:林励成绩: 2013 年 6 月13 日

引言 堆栈计算器 简介: 计算带括号的数学算式,可以判断优先级,错误判断等功能。友好的操作界面,美观的视觉效果。 截图 界面: 计算演示: 结果:

错误判断: 数据结构:应用了栈,做数值缓存,应用了递归处理括号内算式。其他知识:mfc界面设计;c++类的封装(.h与.cpp分离)。 编译环境:使用了vs2012,通过修改vs2010也可以打开。

程序简单流程图: (注:eval 的代码在下面。。。) 功能实现原理与代码: //栈的实现 //初始化 stack::stack(int len) { lengh=len; date=new double[len]; date[0]=0; top=0; } stack::stack() { date=new double[100]; MFC 文本框 按钮事件 = 事件 Cal.eval() 调用函数eval(),返回结果到文本框 当 =事件 发生 从文本框取出表达式到eval ()函数

date[0]=0; top=0; } //判断为空 bool stack::is_empty() { if(top==0) { return true; } return false; } //进栈 void stack::push(double number) { date[top++]=number; } //出栈 double stack::pop() { if(!is_empty()) return date[--top]; } //calculator类(核心代码) 初始化 calculator::calculator() { error="null"; } 是否为数字 bool calculator::is_num(char num) { if(num<='9' && num>='0'||num=='.') { return true; }

单片机简易计算器课程设计

课程设计 题目名称简易计算器设计 课程名称单片机原理及应用 学生姓名 班级学号 2018年6 月20日

目录 一设计目的 本设计是基于51系列单片机来进行的简单数字计算器设计,可以完成计算器的键盘输入,进行加、减、乘、除六位整数数范围内的基本四则运算,并在LED上显示相应的结果。软件方面使用C语言编程,并用PROTUES仿真。 二总体设计及功能介绍 根据功能和指标要求,本系统选用MCS-51系列单片机为主控机,实现对计算器的设计。具体设计及功能如下: 由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LED显示数据和结果; 另外键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键和等号键,故只需要16个按键即可,设计中采用集成的计算键盘; 执行过程:开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。

三硬件仿真图 硬件部分比较简单,当键盘按键按下时它的那一行、那一列的端口为低电平。因此,只要扫描行、列端口是否都为低电平就可以确定是哪个键被按下。 四主程序流程图 程序的主要思想是:将按键抽象为字符,然后就是对字符的处理。将操作数分别转化为字符串存储,操作符存储为字符形式。然后调用compute()函数进行计算并返回结果。具体程序及看注释还有流程图 五程序源代码 #include #include #include/* isdigit()函数*/ #include/* atoi()函数*/ #define uchar unsigned char #define uint unsigned int

编写一个计算器程序课程设计报告 范例

《金融IT 入门-程序设计》 课程设计报告 中国地质大学长城学院 XX 系 2017年 月 3 日 目录 一.总体概述: 二.设计目标: 三.程序流程图: 四.程序代码: 五.设计 体会: 题目: 用Python 编写简易计算器程序 学 号: 专业: 班级: 姓名: 指导教师: 2016-2017学年 第二学期

一、设计内容 1.课程设计目的: 1)掌握Java语言的程序设计方法; 2)理论联系实际,进一步提高学生的软件开发技术; 3)培养学生分析、解决问题的能力; 4)提高学生实践论文撰写能力。 2.课程设计任务: 1)设计的计算器应用程序可以完成加法、减法、乘法、除法以及取余运算(可以进行浮点数和负数的运算); 2)有求倒数、退格和清零功能。 3.创新要求: 能进行正切、余弦,以及求平方根、指数(包括对e)、自然对数运算。图形界面采用继承windowadapter类,采取调用类方法来注册监听! 4.设计要求: 1)设计的计算器应用程序可以完成加法、减法、乘法、除法和取余运算。且有小数点、正负号、求倒数、退格和清零功能。

2)课程设计可选用Eclipse、JBuilder、NetBeans等作为开发平台以提高开发效率,通过资料查阅和学习尽可能熟练掌握其中一种集成开发环境。 3)认真按时完成课程设计报告,课程设计报告内容包括:设计任务与要求、需求分析、设计思路、详细设计、运行调试与分析讨论和设计体会与小结六个部分。 二、原理与分析 1.开发的技术及功能 本课程设计是要做一个图形界面的计算器,其界面主要是由swing组件中的控件构成。程序实现了计算器的基本功能有:加、减、乘、除基本算术运算(可以进行浮点和负数运算)和sin、cos、tan等三角函数求值运算,同时能进行指数运算和自然对数运算,还有求倒数、退格和清零功能。 2.设计思路 设计这个计算器主要是参考Windows操作系统中自带的计算器,由于编者水平和时间的限制,不能将计算器设计到科学型及其他更复杂的类型,在设计过程中还参考了一些其他的优秀设计。但本计算器除了常用的加减乘除(可以进行浮点和负数运算)这些基本运算外,还有求余、求倒、退格、清零,甚至还能进行一些复杂科学的运算,比如余弦(cos)、正切(tan)、指数运算(pow)、自然对数运算(log)、求平方根(sqrt)以及对e的指数运算(exp),并且还能进行连续运算。总体上说来,本计算器设计简单,代码很少,程序很小,但功能却很强大,这是同类计算器所不具备的。 3.设计效果图 设计时先在设计界面中添加按钮等控件,后在按钮的actionPerformed事件中添加代码完成其功能其中调用了Java类中的Math函数库以及各种字符串操作。设计的界面如下: 图一计算器运行界面 三、设计过程 1.程序思路: 1)本应用程序继承自框架类(JFrame),容器Container c采用BorderLayout 边缘布局,将单行文本框加入到“North”区域,包含各种按钮的面板JPanel p 加入到”Center”区域。包含各种按钮的面板JPanel p 采用3行6列的网格布局,然后将数字按钮和运算符按钮以及控制按钮用一个for循环添加到面板中同时注册按钮事件监听器。如: Button b=new Button(); (事件监听器); 2)事件监听器中的事件处理方法void actionPerformed(ActionEvent evt)完

AT89C51单片机简易计算器的设计

AT89C51单片机简易计算器的设计 单片机的出现是计算机制造技术高速发展的产物,它是嵌入式控制系统的核心,如今,它已广泛的应用到我们生活的各个领域,电子、科技、通信、汽车、工业等。本设计是基于51系列单片机来进行的数字计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除六位数范围内的基本四则运算,并在LCD上显示相应的结果。设计电路采用AT89C51单片机为主要控制电路,利用MM74C922作为计算器4*4键盘的扫描IC读取键盘上的输入。显示采用字符LCD静态显示。软件方面使用C语言编程,并用PROTUES仿真。 一、总体设计 根据功能和指标要求,本系统选用MCS-51系列单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。具体设计如下:(1)由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LCD 显示数据和结果。 (2)另外键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键和等号键,故只需要16 个按键即可,设计中采用集成的计算键盘。 (3)执行过程:开机显示零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数

值,按等号就会在LCD上输出运算结果。 (4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LCD上提示溢出;当除数为0时,计算器会在LCD 上提示错误。 系统模块图: 二、硬件设计 (一)、总体硬件设计 本设计选用AT89C51单片机为主控单元。显示部分:采用LCD 静态显示。按键部分:采用4*4键盘;利用MM74C922为4*4的键盘扫描IC,读取输入的键值。 总体设计效果如下图:

科学计算器壳套模具设计

二、注射机的选择 塑件:科学计算器壳套 重量: 材料:ABS 材料密度:~cm3,取密度为cm3。 体积:V=M/ρ==。 ABS 注塑模工艺条件 注射机类型:螺杆式注射机。 干燥处理:吸湿性较大,成型前应干燥处理,湿度应小于%,建议干燥条件为80~85℃, 2~3小时。 熔化温度:230~300℃。 模具温度:50~80℃。 注射压力:70~100MPa 。 注射速度:中等注射速度,将摩擦热降至最低。 型腔数的选择 按生产进度算: 型腔数n= 其中 ——故障系数; ——成型周期 N ——一副模具的订货量; ——所在厂每月工作时间(h); ——订货至交货 期(月); ——模具制造时间(月)。 由于计算器壳套的体积较大,需要的注射量较大,所以模具选用一模两腔。 注射机的选择 最大注射量 根据生产经验总结,在设计模具以容量计算时 ——注射机最大注射量,cm3; 0*1.053600() c h m N t t t t ?-c t h t 0t max V 0.8V ≤塑

——塑件与浇注系统体积总和,cm3。 ——塑件成型时所需要的注射量,cm3或g ; n ——型腔个数; ——每个塑件的质量或体积,cm3或g ; ——浇注系统的质量或体积,cm3或g 。 浇注系统凝料体积初步计算,按塑件体积倍计算。 代入产品体积,浇注系统体积,型腔数为4个。 则 3345.8830.882.13(4cm cm G =+?=)塑 3max 56.1108.045.888.0cm G G =÷=÷=塑 公称注射容量 注射机多以公称注射容量来表示 c ——料筒温度下塑料的体积膨胀率的矫正系数,对于结晶形塑料,c=;对于非结晶形 塑料,c=; ——所用塑料在常温下的密度; G ——注射机的公称注射容量。 代入 3/05.1cm g =ρ, 取c=; 则 3max 96.107)05.193.0/(56.110/cm c G G =?==ρ。 锁模力 模具从分型面涨开的力必须小于注射机规定的锁模力 T ——注射机的额定锁模力; F ——塑件与浇注系统在分型面上的总投影面积; K ——安全系数,通常取~; q ——熔融塑料在模腔内的压 力,. 代入数据, 22237.15855.34cm cm F =??=π 根据《塑料成形模具设计》表4-1,取q=300 G =n *M +M 塑塑浇 max G c G ρ=1000 T K F q ≥??2/kg cm 2 /kg cm

单片机简易计算器设计

单片机简易计算器设计 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

一、设计要求 1.设计4*4的键盘,其中10个数字键0~9,其余6个为“+”“-”“*”“/”“=”和“C” 2.设计2位LED接口电路 3.实现1位数的简单运算 二、硬件系统设计 1、LED接口电路 简易计算器需要2位8段码LED显示电路。用8031单片机经8255A扩展2位8段码LED显示器,用8255A的A口作为段码(字形代码)数据口,PB0和PB1作为位控制端口。在位控制口加集电极开路的反相高压驱动器74LS06以提供驱动LED显示器所需的足够大的电流,然后接至各数码显示器的共阴极端。同理,在段码数据口集电极开路的正相高压驱动器74LS07提供足够大的电流,然后接到数码显示器的各段。逻辑电路结构如下:

2、键盘接口电路 简易计算器需要4*4的行列式键盘。用8031单片机经8255A扩展4*4行列式键盘,8255A的B口和C口用于扩展键盘接口,B口高4位作为输出口,C口低4位作为输入口。逻辑电路结构如下: 3、计算器逻辑电路图 将LED接口电路和键盘接口电路结合到一起就是简易计算器的逻辑电路图,如下: 三、软件设计 1、LED显示程序设计 LED显示器由七段发光二极管组成,排列成8字形状,因此也成为七段LED显示器,器排列形状如下图所示:

为了显示数字或符号,要为LED显示器提供代码,即字形代码。七段发光二极管,再加上一个小数点位,共计8段,因此提供的字形代码的长度正好是一个字节。简易计算器用到的数字0~9的共阴极字形代码如下表: 0~9七段数码管共阴级字形代码 2位LED显示的程序框图如下: 2、读键输入程序设计 为了实现键盘的数据输入功能和命令处理功能,每个键都有其处理子程序,为此每个键都对应一个码——键码。为了得到被按键的键码,现使用行扫描法识别按键。其程序框图如下: 3、主程序设计 (1)数值送显示缓冲程序设计 简易计算器所显示的数值最大位两位。要显示数值,先判断数值正负,如果是负值,则符号位显示“-”,然后将数值除以10,余数送显最最低位,判断商是否为0,若为0则返回,若不为0,则将商除以10,将余数送显高位。程序框图如下: (2)运算主程序设计

制作FLASH计算器

制作FLASH计算器 平山县回舍中学郜兵山 同学在用计算器时,大都有一种神秘感。因此,他们经常对我提出以下问题:计算器是通过什么手段来完成一系列的运算的?究竟在计算器的按键上添加了一些什么东西,使不同的按键具有不同的功能?还有一些同学做出更大胆的设想:自己能否作一个计算器,来完成常见的计算呢?带着这几个问题,我与大伙一起用FLASH软件制作一个计算器,带你走进神奇的计算器世界。 这个计算器的制作可按以下步骤来完成: 1、创建“按钮”图层,并对其进行设置 (1)打开一个FLASH空文档,将“图层1”重命名为“按钮”。 (2)执行“插入”→“新建元件”命令,弹出“创建新建元件”对话框,如下图所示。 在此对话框的“名称”后文本框中输入“按钮”,在“行为”选择“按钮”选项,然后单击“确定”按钮。进入按钮编辑场景。 (3)执行“窗口”→“公用库”→“按钮”命令,打开“库—按钮”对话框,如图所示。

(4)在“库—按钮”对话框中,选择“Key Buttons ”文件夹,双击将其打开,在打开的文件来件中选择“Key —labeled button ”按钮。将其拖放到按钮编辑场景中,选中其中的“arrows ”图层,将其删除,这时按钮上的文本“A ”被删除。返回到主场景. (5)在这个计算器中一共需要十九个按钮,其中数字按钮0—9、运算符号四个(+、-、×、÷)、等号(=)、小数点(.)、表示数的性质的符号(+或-)、清零、开始等),因此,我们将库中的编辑过的按钮向舞台拖放十九次,并按一定的顺序排好。如图所示。

2、创建“动态文本”图层,并对其时行设置 (1)新增一个图层,并且重新命名为“动态文本”。 (2)选中工具栏中的文本工具,在舞台上方中央位置拖出一个文本域. (3)打开属性面板,设置这个文本域的属性为动态文本,实例名称为“结果”,变量名为“Z”,显示线条设置为“多行”,其它采用默认值. 如下图所示。 3、创建“提示文本”图层,并对其进行设置 (1)新插入一个图层,重新命名为“提示文本”; (2)选中工具栏中的文本工具,并设置其属性:静态文本,字体颜色:红色,字号:30号,其它采用默认值,如下图所示。 舞台上的每个按钮上分别添加如下静态文本:1、2、3、4、5、6、7、8、9、0、+、-、×、÷、=、.、开始、清零、负;在舞台的右边中央位置添加静态文本“FLASH计算器”,在动态文本域的左边添加静态文本:显示信息。添加文本提示后的界面如图所示。

基于LabVIEW的简易计算器设计

第1章绪论 1.1 虚拟仪器简介 虚拟仪器(virtual instrument)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。上面的框图反映了常见的虚拟仪器方案。 虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。虚拟仪器的研究中涉及的基础理论主要有计算机数据采集和数字信号处理。目前在这一领域内,使用较为广泛的计算机语言是国NI公司的LabVIEW。 虚拟仪器的起源可以追溯到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。PC机出现以后,仪器级的计算机化成为可能,甚至在 Microsof t公司的 Windows 诞生之前,NI公司已经在Macintosh计算机上推出了LabVIEW2.0 以前的版本。对虚拟仪器和 LabVIEW [2]长期、系统、有效的研究开发使得该公司成为业界公认的权威。目前LabVIEW 的最新版本为 LabVIEW2011,LabVIEW 2009 为多线程功能添加了更多特性,这种特性在1998 年的版本 5 中被初次引入。使用 LabVIEW 软件,用户可以借助于它提供的软件环境,该环境由于其数据流编程特性、LabVIEW Real-Time 工具对嵌入式平台开发的多核支持,以及自上而下的为多核而设计的软件层次,是进行并行编程的首选。 普通的 PC 有一些不可避免的弱点。用它构建的虚拟仪器或计算机测试系统性能不可能太高。目前作为计算机化仪器的一个重要发展方向是制定VXI 标准,这是一种插卡式的仪器。每一种仪器是一个插卡,为了保证仪器的性能,又采用了较多的硬件,但这些卡式仪器本身都没有面板,其面板仍然用虚拟的方式在计算机屏幕上出现。这些卡插入标准的 VXI 机箱,再与计算机相连,就组成了一个测试系统。VXI仪器价格昂贵,目前又推出了一种较为便宜PXI 标准仪器。 1.2 LabVIEW简介 LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C 和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语

计算机科学与技术专业课程设计

专业教育 ─我所认识的计算机专业 1.对专业的最初认识 1.1为什么选择计算机专业 计算机使当代社会的经济、政治、军事、科研、教育、服务等方面在概念和技术上发生了革命性的变化,对人类社会的进步已经并还将产生极为深刻的影响。目前,计算机是世界各发达国家激烈竞争的科学技术领域之一。 随着信息时代的到来,计算机逐渐成为技术及科学领域的核心。随着计算机的普及,其应用领域逐渐广泛,深刻影响着我们的学习,工作及生活。因而,计算机的学习与我们的生活息息相关。 1.2最初的认识 虽然对于这个专业刚开始的时候不了解它具体是干什么的,但是从小就对于计算机十分感兴趣,因此在高考完填报志愿时就报了这个专业。进入大学之后,看到培养计划发现这个专业应用还是挺多的,但是因此让自己更加的对以后的职业感到很迷茫,不知道究竟是该干什么了。但是既来之,则安之。相信在以后的学习过程中会慢慢地找到方向,并为之努力的。因此说对于计算机专业还是抱有很大的热情的。 2.学习的方法 2.1培养对专业的兴趣 俗话说兴趣是最好的老师,因此要想真正做好一件事情,学好自己的专业首先就要培养自己对本专业的兴趣。那么应该如何培养呢?可能阅读专业书籍对于刚刚步入大学的自己来说有点困难,也很枯燥,那么不妨先从科普书籍看起。科普书籍是了解理论、获得应用知识最好的途径。相信不少理工科的同学被量子物理和相对论搞得头昏脑胀过。究其原因,是我们的现实生活与抽象的数学模型之间存在思想意识上的鸿沟。然而要是读读斯蒂芬·霍金的《时间简史》,你就会被书中有趣的故事和例证所吸引,从而对抽象的理论有了感性的认识——即使仍然没有读懂,你也至少了解了这个学科研究的领域和目标是什么,也必然有所收获。 2.2认真学习专业课程,学好数学 大学计算机专业对数学的要求较高,其重要性不必多言。数学令不少同学头痛,除了其“繁”与“难”外,很大程度上是因为他们没有理解这些抽象理论的实际应用方向。与本科数学专业的课程设置相比,计算机专业的数

第02讲 简易计算器的设计

第02讲计算器 2.1 计算器简介 大家都知道,计算器是日常生活中不可缺少的一个工具,在Microsoft的Windows操作系统中,附带了一个计算器程序,有标准型和科学型两种模式。Windows XP下的标准型和科学型计算器程序分别如图2-1和图2-2所示。 图2-1 Windows XP下的标准型计算器 图2-2 Windows XP下的科学型计算器 Windows操作系统下附带的计算器程序功能相当的强大,本课我们将模仿Windows的计算器,使用Visual C# 2005开发平台开发一个功能相对简单的计算器应用程序,它能完成加、减、乘、除运算。 接下来详细的介绍简易计算器的设计方法和步骤。

2.2 界面设计及属性设置 用户界面设计是软件开发中非常重要的一个部分,用户界面的好坏直接影响软件的质量,本节将介绍如何设计简易计算器的用户界面以及界面上各控件的属性设置。 2.2.1 界面设计 打开Visual Studio 2005开发工具,新建一个Windows应用程序,然后在窗体上依次放置1个TextBox和17个Button控件,如图2-1所示(设置好属性后)。 图2-1 计算器用户界面 2.2.2 属性设置 窗体和各控件的属性设置如表2-1所示。 表2-1 窗体和各控件的属性

2.3 编写代码 本程序需要用到一些公共变量,例如用来接收操作数、运算结果,判断输入的是否为小数等,因此首先在代码的通用段声明以下变量: //****************************************************************** double num1, num2, result; // 操作数及运算结果 bool decimalFlag = false; // 判断输入的是否为小数 string myOperator; // 操作类型 //******************************************************************

简易计算器设计实验报告

简易计算器设计实验报告 一.设计任务及要求 1.1实验任务: 根据计算器的原理设计一个具有加减乘除功能的简易计算器。如:5+3*4/8=4。 1.2 实验基本要求: (1)实现最大输入两位十进制数字的四则运算(加减乘除)。 (2)能够实现多次连算(无优先级,从左到右计算结果)。 如:12+34*56-78/90+9=36 (3)最大长度以数码管最大个数为限,溢出报警。 二.实验设计方案 (1)用QuartusII的原理图输入来完成系统的顶层设计。 (2)用VHDL编写以及直接拖模块来各功能模块。 (3)通过2个脉冲分别实现个位数和十位数的输入。 (4)通过选择每次的输出数值,将输出值反馈到运算输入端 (4)通过除法运算实现十六进制到十进制的转换输出。 其具体实现流程图如下:

三系统硬件设计 FPGA: EP2C5T144C8目标板及相应外围硬件电路。(从略) 四系统软件设计 1.数据输入模块 原理:用VHDL创建模块,通过两个脉冲分别对两个数码管进行输入控制,再通过相应运算模块将两个独立数据转化成两位十进制数字。 2.运算模块 原理:用VHDL创建模块,四种运算同步运行,通过按键加、减、乘、除选择输出对应的计算结果,当按键等号来时,将所得结果反馈给运算模块输入端。具体实现代码见附录二。 3.输出模块 原理:用VHDL创建模块,通过按键等号来控制显示运算对象还是运算结果,当等号按下时,输出计算结果,否则显示当前输入的数据,并且通过除法模块将十六进制转化为十进制。当输出结果溢出是LED0亮,同时数码管显示都为零。部分实现见附录二。 五实验调试 输入数据12,再按加法键,输入第二个数字25,按等号键,数码管显示37;按灭加法、等号键,输入第二个数据2,依次按等号键,减法键,数码管显示35;同上,按灭减法键、等号键,输入第三个数据7,依次按等号键,除法键,数码管显示5;按灭除法键、等号键,输入第四个数据99,依次按等号键,乘法键,数码管显示495,按灭乘法键、等号键,当前显示为99,依次按等号键、乘法键,数码管显示49005,同上进行若干次之后,结果溢出,LED0亮,同时数码管显示都为零。当输出为负数时,LED0灯变亮,同时数码管显示都为零。六实验结论 本实验基本实现了计算器的加减乘法运算功能,但是存在一个突出的缺陷,就是当输出结果时,必须先按等号键导通数据反馈,再按运算键选择输出结果。这与实际应用的计算器存在很大的差距。但是,本设计可以通过等号键实现运算对象和运算结果之间的切换。

C语言制作简单计算器

C语言制作简单计算器 一、项目介绍 我们要用c语言做一个简单的计算器,进行加、减、乘、除操作。本程序涉及的所有数学知识都很简单,但输入过程会增加复杂性。我们需要检查输入,确保用户没有要求计算机完成不可能的任务。还必须允许用户一次输入一个计算式,例如:32.4+32 或者9*3.2 项目效果图 编写这个程序的步骤如下: ?获得用户要求计算机执行计算所需的输入。 ?检查输入,确保输入可以理解。 ?执行计算。 ?显示结果。 三、解决方案 1.步骤1

获得用户输入是很简单的,可以使用printf()和scanf()。下面是读取用户输入的程序代码: #includeint main(){ double number1=0.0; //定义第一个操作值 double number2=0.0; //定义第二个操作值 char operation=0; //operation必须是'+''-''*''/'或'%' printf("\nEnter the calculation\n"); scanf("%lf%c%lf",&number1,&operation,&number2); return0; } 2.步骤2 接着,检查输入是否正确。最明显的检查是要执行的操作是否有效。有效的操作有+、-、*、/和%,所以需要检查输入的操作是否是其中的一个。 还需要检查第二个数字,如果操作是/或者%,第二个数字就不能是0。如果右操作数是0,这些操作就是无效的。这些操作都可以用if语句来完成,switch语句则为此提供了一种更好的方式,因此它比一系列if语句更容易理解。 switch(operation) { case'+': printf("=%lf\n",number1+number2); break; case'-': printf("=%lf\n",number1-number2); break; case'*': printf("=%lf\n",number1*number2); break; case'/': if(number2==0) printf("\n\n\aDavision by zero error!\n"); else printf("=%lf\n",number1/number2); break;

单片机设计简易计算器

简易计算器 Simply Calculator 1 设计思想 此计算器有键盘部分、单片机、显示部分三部分组成,键盘部分主要完成输入功能;单片机主要完成数据处理功能,包括确定按键,完成运算,以及输出数据;显示器部分主要完成单片机输出的显示。 本设计的思路是利用单片机性能好,稳定性强的优点来实现系统的运行。设计大致可以分为三个步骤:第一步,硬件的选取和设计;第二步,程序的设计和调试;第三步,Protues 系统仿真。 硬件是设计的骨骼,不仅关系到设计总体方向的确定,还要综合考虑节能,环保,以及稳定性和经济性等各种因素。因此需要花费大量的时间。硬件的选取最为重要,包括选用的芯片,显示设备的选取,输入设备的选取等。本设计是通过单片机来实现的,因此选用了ATMEGA16单片机作为主体,输入设备选用矩阵键盘。程序是硬件的灵魂,是实现设计的中心环节。本设计使用的程序语言是C语言,在“ICC AVR”中运行,调试,直到运行出正确结果,然后输出后缀名为.HEX格式的文件,以备在Protues中仿真使用。程序是设计的关键,程序的调试需要大量的时间,耐心,还够要有足的细心才能成功。本设计中就出现了大量的错误,经过认真修改,最终才能运行出正确结果。最后的系统仿真是设计是否成功的验证,是设计不可缺少的重要环节。这就要求能掌握Protues的一些基本操作。2原理分析 2.1矩阵键盘的扫描 图2.1 矩阵键盘图

如图2.1所示,单片机的8个I/O口和矩阵键盘相连,用8个I/O口来控制矩阵键盘的16个按键是非常有意思的,首先我们设置单片机的PD0—PD7为输出,且PD0—PD3依次设置为低电平,而PD4—PD7设置为高电平,然后我们设置PD4—PD7为输入,而PD0—PD3仍然为输出,假如此时M1键按下,则PD0与PD4相连,因为PD0是低电平,而PD4是输入,所以PD4会被拉为低电平,同理,如果M2被按下,则PD5会被拉低,M3按下,PD6会被拉低,M4按下,PD7被拉低。这是判断有无键盘按下的过程,当我们判断是那一个键盘按下时,我们首先设置8个I/O口为输出,输出为FE,即,PD0为低电平,其他全为高电平,然后我们设置PD4—PD7为输入,如果M1被按下,则PD4会比被拉为低电平,此时会变成EE,同理可以知道M2被按下时会变为DE,M3被按下时会变为BE,M4被按下时会变为7E。同理我们可以设置8个I/O口输出FD来检测M5—M8是否被按下,设置8个I/O口输出FC来来检测M9—M12,设置8个I/O口输出F7来检测M13—M16,如果M1—M4没有被按下,就继续检测M4—M8,一次类推,就可以检测出16个按键了。在这次设计中,16个按键M1—M16所对应检测值分别为:EE,DE,BE,7E,ED,DD,BD,7D,EB,DB,BB,7B,E7,D7,B7,77。 2.2 数字显示与计算 本次设计选用的显示器是1602液晶显示器,此液晶显示器能显示32个字符,VSS接地,VDD接电源正极,E为时使能信号,R/W为读写选择端(H/L),RS为数据/命令选择端(H/L),D0—D7为数据I/O口。 首先我们初始化液晶显示器,然后显示出第一个被按下的数,并且使光标右移,如果有第二个数按下,则据继续显示,以此类推,然后把所有显示出来的数换算成一个数,如果按下“+”号,则显示出“+”,并且同理显示出“+”号后面按下的数字,然后调用加子程序,运算出结果,如果按下的是“-”,则调用减子程序,如果按下“*”,则调用乘子程序,如果按下“/”,则调用除子程序。然后再调用显示结果子程序,显示出结果。

科学计算器课程设计报告C课程设计修订稿

科学计算器课程设计报告C课程设计 集团标准化工作小组 [Q8QX9QT-X8QQB8Q8-NQ8QJ8-M8QMN]

计算机科学与技术学部 C++课程设计 题目科学计算器 学部计算机科学与技术 班级计科1103 指导教师李军 姓名刘明 学号 2012年6月27日

摘要 计算器的产生和发展是建立在电子计算机基础之上的。硬件方面,自1946年第一台电子计算机诞生以来,计算机技术的发展可谓日新月异,从庞大的只能在实验室里供研究使用的计算机到如今能适应不同环境满足不同需求的各种各样的计算机;运算速度从每秒几千次到每秒几百亿次;处理器从焊有上百万个电子管的大的惊人的电子板到只有指甲大小的集成电路;现在计算机在硬件方面的发展已达到了每三个月更新换代一次的惊人速度。软件方面,也已从机器语言、汇编语言、高级语言发展到现如今的第四代语言——非结构化、面向对象、可视化的语言。 在这个计算器里面,我们实现了简单的四则运算以及更高功能的科学计算,它的外观简洁美观,使人们能快捷简单的操作。能准确的得到计算结果,大大减少了数字计算所需要的时间,为人们的生活带来便利。此系统在Windows 7环境下,使用VC++ 进行编写。 简单计算器包括双目运算和单目运算功能,双目运算符包含基本的四则运算及乘幂功能,单目运算符包含正余弦,对数,开方,阶乘,倒数,进制转换等运算。可对其输入任意操作数,包括小数和整数及正数和负数进行以上的所有运算并能连续运算。并且包含清除,退格功能等。我们所做的计算器其功能较Windows 7下的计算器还是很不够多,没有其菜单的实现功能项,没有其小巧的标准计算器。 关键词:计算器;运算;VC++等

简易计算器

辽宁工业大学 数字电子技术基础课程设计(论文)题目:简易计算器 院(系):电子与信息工程学院 专业班级: 学号: 学生姓名: 指导教师: 教师职称: 起止时间:2012.12.17---2012.12.28

课程设计(论文)任务及评语

摘要 这次的课程设计的任务是设计一个具备加减乘运算功能的电路,能够通过开关控制进行加减法计算和乘法计算,并利用LED灯显示计算结果。 本次设计通过开关的闭合和开通来代表电平的高地位继而代表0和1来输入所要计算的十进制数字。加减运算电路主要由74LS283的级联电路组成。通过异或门将原码全部转换为补码,然后采用个位和个位相加,十位和十位的相加的原则,将两个的个位的代码送入到一个加法器中,将进位依次传递。但是加法器只可以做加法运算,不满足我们的设计要求,于是我们将减法也变成加法进行运算,运算都为补码,最后再将结果在转换为原码,通过LED灯显示出来。乘法运算电路主要由移位寄存器74LS194和加法器74LS283组成。 显示电路主要由7段显示译码器构成,将加减和乘法运算电路计算所得的运算结果每4为输入到一块7448芯片中,按高低位排列就得到了我们所需要的十进制的运算结果了。 关键词:运算;反码;LED显示;移位寄存器

目录 第1章绪论 (1) 1.1简易计算器概况 (1) 1.2本文设计要求 (2) 1.3方案论证 (2) 1.4总体设计方案 (3) 第2章简易计算器各单元电路设计 (4) 2.1简易计算加法电路设计 (4) 2.2简易计算器减法电路设计 (5) 2.3乘法运算电路设计 (6) 2.4译码显示电路设计 (7) 第3章简易计算器整体电路设计 (8) 3.1系统原理图 (8) 3.2部分电路仿真 (9) 3.2.1 加法电路仿真 (9) 3.2.2 减法电路仿真 (10) 第4章设计总结 (11) 参考文献 (12) 附录 (13)

计算器制作

VB应用程序的设计方法 ——“简易计算器”教学设计 揭阳第一中学卢嘉圳 教学内容:利用所学知识制作Visual Basic程序“简易计算器” 教学目标:能熟练运用CommandButton控件及TextBox控件进行Visual Basic(以下简称VB)程序的设计,能熟练运用条件语句编写代码 教学重点:运用开发VB程序一般过程的思路来开发“简易计算器” 教学难点:分析得出实现“简易计算器”各运算功能的算法。 教材分析: 当我刚开始进行程序设计的教学时,便感觉比较难教。这是因为程序设计本身枯燥、严谨,较难理解,而且学生大多数都是初学者,没有相应的知识基础。对于《程序设计实例》,我们选用的教材是广东教育出版社出版的《信息技术》第四册,该书采用的程序设计语言是VB,而学生是仅学过了一点点简单的QB编程之后就进入《程序设计实例》的学习的。 教材为我们总结了设计VB程序的一般步骤:创建用户界面;设置控件属性;编写事件程序代码;运行应用程序。我总结了一下,其实VB程序设计可分为设计用户界面及编写程序代码两个环节。 教学过程: 一、引入新课 任务:让学生按照书上提示完成一个非常简单的VB程序——“计算器”(仅包含开方、平方、求绝对值功能)的制作。 目的:加强对CommandButton控件及TextBox控件的掌握,复习对开方、求绝对值函数的使用。 引入本节课的学习任务:设计一个简易计算器,包含加、减、乘、除、开方、平方等运算。程序界面可参考下图。 具体功能为:在Text1中输入一个数值,然后单击代表运算符的按钮则运算结果会在text2中显示出来;比如在text1中输入一个2,然后按“+”按钮,再输入一个3按“-”按钮,再输入一个-4按“*”按钮,则实际为(2-3)*(-4);最后在text2中显示结果为4。

简易计算器课程设计

评阅教师评语:课程设计成绩 考勤成绩 实做成绩 报告成绩 总评成绩指导教师签名: 课程设计报告 论文题目基于ARM的简易计算器设计 学院(系):电子信息与自动化学院 班级:测控技术与仪器 学生姓名:同组同学: 学号:学号: 指导教师:杨泽林王先全杨继森鲁进时间:从2013年 6 月10 日到2013年 6 月28 日 1

目录 1、封面—————————————————————P1 2、目录—————————————————————P2 3、前言—————————————————————P3 4、关键字————————————————————P3 5、原理与总体方案————————————————P3 6、硬件设计———————————————————P6 7、调试—————————————————————P10 8、测试与分析——————————————————P11 9、总结—————————————————————P13

10、附件—————————————————————P14 前言 近几年,随着大规模集成电路的发展,各种便携式嵌入式设备,具有十分广阔的市场前景。嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是是由单个程序实现整个控制逻辑。在嵌入式系统中,数据和命令通过网络接口或串行口经过ARM程序处理后,或显示在LCD上,或传输到远端PC上。 本文通过周立功的LPC2106芯片完成的简易计算器,正是对嵌入式应用的学习和探索。 一、摘要: 计算器一般是指“电子计算器”,是能进行数学运算的手持机器,拥有集成电路芯片。对于嵌入式系统,以其占用资源少、专用性强,在汽车电子、航空和工控领域得到了广泛地应用。本设计就是先通过C语言进行相应程序的编写然后在ADS中进行运行最后导入PROTUES进行仿真。最后利用ARM中的LPC2106芯片来控制液晶显示器和4X4矩阵式键盘,从而实现简单的加、减、乘、除等四则运算功能。 关键字:中断,扫描,仿真,计算 二、原理与总体方案: 主程序在初始化后调用键盘程序,再判断返回的值。若为数字0—9,则根据按键的次数进行保存和显示处理。若为功能键,则先判断上次的功能键,根据代号执行不同功能,并将按键次数清零。程序中键盘部分使用行列式扫描原理,若无键按下则调用动态显示程序,并继续检测键盘;若有键按下则得其键值,并通过查表转换为数字0—9和功能键与清零键的代号。最后将计算结果拆分成个、十、百位,再返回主程序继续检测键盘并显示;若为清零键,则返回主程序的最开始。 电路设计与原理:通过LPC2106芯片进行相应的设置来控制LCD显示器。 而通过对键盘上的值进行扫描,把相应的键值通过MM74C922芯片进行运算从而

VB程序语言设计科学计算器

VB程序语言设计 课程大作业 题目名称:科学计算器设计 班级: 12020742 姓名: 学号: 课程教师:温海骏 学期:2014-2015学年第2学期 完成时间: 2015年5月

一、实验内容 《科学计算器》设计 本科学计算器是一种能实现加、减、乘、除、倒数、乘方、正玄、余玄、正切、In、n!函数、进制、弧度转换等运算功能,并带有存储器、统计框等,基本实现了Windows自带计算器的所有功能。要实现计算器的这些功能就用到我们所学的VB知识编写程序来实现运算功能并解决问题,也是我们实训要达到的目的。 二、实验目的 1、通过本实验,进一步理解Visual Basic的编程方法。 2、提高运用Visual Basic编程的能力。 3、培养对所学知识的综合运用能力。 4、用所学的VB知识编写程序来实现运算功能并解决问题,达到实训的目的 三、实验设备 计算机、VB软件 四、实验过程 1、课题的选材过程(设计思路) 由VB程序设计的科学计算器是一种能实现加、减、乘、除、倒数、乘方、正玄、余玄、正切、In、n!函数、进制、弧度转换等运算功能,并带有存储器、统计框等,基本实现了Windows自带计算器的所有功能。 思路:为实现上述功能,我的基本思路是在窗体上建立4个控件数组,第一个控件数组是标准型,实现简单的四则运算;第二个控件数组是科学型,用来进行正弦余弦、正切余切、正割余割、反正弦反余弦、对数和n!等函数功能;第三个控件数组为程序员,实现进制转换;另外一个按钮实现单位转换。 2、设计的将要达到的目标 实现加、减、乘、除、倒数、乘方、正玄、余玄、正切、In、n!函数、进制、弧度转换等运算功能,并带有存储器、统计框等,基本实现Windows自带计算器的所有功能。 3、总体设计结构与功能 (1)总体设计结构介绍(绘制:结构流程图) 结构流程图如下:

简易计算器设计

自动化控制系统及装置综合实习 控制系统及装置综合实习 实 习 报 告 学院: XX学院 专业: XXX 姓名: XX 学号: XXXXXXX 指导教师: XXX 二〇一一年九月十六日

目录 1.实习课题任务 (3) 1.1课题:简易计算器的设计 (3) 1.2设计、实习要求 (3) 2.课题任务方案 (3) 3.硬件部分: (4) 3.1电路的整体设计 (4) 3.2单元电路设计 (5) 3.2.1 单片机部分 (5) 3.2.2输入单元 (8) 3.2.3显示单元 (9) 4.软件部分 (9) 4.1LED显示程序 (9) 4.2读键输入程序 (10) 4.3运算主程序的设计 (12) 5.实习中出现的问题 (13) 6.实习感想 (13)

1. 实习课题任务 1.1 课题:简易计算器的设计 1.2 设计要求: 根据功能和指标要求,本系统选用80C51单片机为主控机实现对计算器 的设计。可以进行两位数的加、减、乘、除,可连续运算。当键入值大于99时,将自动清零,可以重新输入。按“+”、“-”、“×”号可以进行操作数的相应运算,减法中运算结果为“-”时,“-”号要跟着结果。 2. 课题任务方案 本次设计使用单片机来完成两位数以内简易计算器。本设计以AT80C51为单片机,P2口作为输入端外接4*4键盘,通过键盘扫描确定输入数字。在P0口、P1口接驱动电路,用以保证LED 数码管工作正常。计算器将完成的功能有两位数以内加、减、乘、除功能。整体框图如下: 在设计过程中,先着手编写主程序,再根据需要设计从属程序和子程序,逐层细化最终完成一个复杂程序的设计。程序流图如下所示: 单 片 机 输入单元 运算单元 显 示 单 元

相关主题
文本预览
相关文档 最新文档