当前位置:
文档之家› 项目计算器子项目一整数四则运算计算器设计
项目计算器子项目一整数四则运算计算器设计
方法是类的成员。 定义的格式
修饰符 返回类型 方《C法#程序名设计(》 形参列表)
{
工作任务二:设计程序模块的流
❖ 说明:
程图
1、“返回类型”指定该方法返回的值的类型。
如果方法无返回值,则返回类型为void;
2、“方法名”是一个有效的标识符;“形参列
表”中的“形参”是“形式参数”的简称,
“形参列表”是一个可选项,指定方法的参数,
状态是对象执行《某C#程项序设计活》 动或等待某个事件时
工作任务一:构建计算器的状态 图
状态机的各种元素
《C#程序设计》
工作任务一:构建计算器的状态 图 ❖ 一个简单的编辑器可被视为有限的状态机
状态: Emptying for text(等待文本)。
有错误进行调试修改《C#。程序设计》
工作任务
❖ 工作任务一:构建计算器的状态图; ❖ 工作任务二:设计程序模块的流程图; ❖ 工作任务三:设计界面完成窗体及控件的属
性设置; ❖ 工作任务四:编写程序代码; ❖ 工作任务五:测试软件,对错误进行调试修
改。
《C#程序设计》
工作任务一:构建计算器的状态图
如果返回类型为 void,则可使用没有值的 return 语句来停止方法的执行。
如果没有 return 关键字,方法执行到代码块 末尾时即会停止。
具有非 void 返回《类C#程型序设计的》 方法才能使用 return 关键字返回值。
工作任务二:设计程序模块的流 程图
❖ 小组讨论三个方法的实现流程,画出流程图
《C#程序设计》
工作任务一:构建计算器的状态 ❖ 编写计算器程序的图思路:
InitMembers()方法:对计算器的状态进行初始化 Numbers_Click(int)方法:处理接受到数字,参
数是单击的数字 Operators_Click(char)方法:处理接收到运算符,
参数是单击的运算符
《C#程序设计》
工作任务二:设计程序模块的流
程图 当第1个操作数输入完毕后,用户将输入一个运
算符,一般来说是+、-、×、/中的一个,这 时程序应用保存第1个操作数和当前的运算符, 接下去输入第2个数,第2个数也输入完毕后,一 般用户会输入“=”号求出结果,然后用户可以 进行下一轮的计算,可见初始化时,运算符的初 值为“=”号是比较合理的。
《C#程序设计》
工作任务二:设计程序模块的流 程图
❖ 1、知识准备——方法
方法(method)又常称为函数(function),是 实现可以由对象或类执行的计算或操作
可以把一个程序中多次用到的某个任务,如常用 的计算定义为方法,以便反复调用
如:MessageBox类的Show、Math的Pow都是 方法
工作任务一:构建计算器的状态 2、整数四则运算计算器图的状态图设计
状态:
接受第1个操作数
• 接收数字 • 接收+、-、×、/、=
接受第2个操作数
• 接收数字 • 接收+、-、×、/、=
输出计算机结果
出错
《C#程序设计》
工作任务一:构建计算器的状态 图
初始/接受第一个操作数的分解子状态图
接受第二个操作数的分解子状态图
如果有多个参数,可以用逗号分隔,每个参数
与声明变量的方法一样,都是指定数据类型和 参数名。即使没有参数,括号也不能省略。
《C#程序设计》
工作任务二:设计程序模块的流
3、 return语句 程图
❖格式:
return 表达式
方法可以使用 return 关键字来返回值,如果 语句中 return 关键字的后面是与返回类型匹 配的值,则该语句将该值返回给方法调用方。 return 关键字还会停止方法的执行。
❖ 可能具有状态机的对象包括:类、子系统、 用例、接口和协议。
❖ 并非所有对象都需要有状态机。如果对象 的行为很简单,只是存储或检索数据,那 么该对象的行为就与状态无关,它的状态 机也没有多少用处《C。#程序设计》
工作任务一:构建计算器的状态 图
❖ 下面请同小组讨论整数四则运算计算器的状 态图
《C#程序设计》
事件: Load file(装载文件) Insert text(插入文本) Insert character (插入字符) Save and quit (保存并退出)
《C#程序设计》
工作任务一:构建计算器的状态 ❖ 状态机最多地用于建图立对象在其生命期内
的行为模型。
❖ 当对象具有依赖于状态的行为时,尤其需 要使用状态机。
工作任务一:构建计算器的状态
❖ 问题:
图
必须判断一下输入的是第一个数字还是 第一个以后的数字
请问:如何处理?
《C#程序设计》
工作任务一:构建计算器的状态 图
❖ 定义一个bool类型的变量bNumBegins,其 初值为 true,当输入第一个数字之后就将它置为 false,直到此数输入完成后再置为true, 准备进行下一轮的计算。
用户依次键入第1个数、+、-、×、/运算符、 第2个数后,又按下+、-、×、/运算符而不 是等号时,程序也要先计算出前一次的结果,并 将该结果作为下一《轮C#程计序设算计》的第1个操作数处理。
《C#程序设计》
工作任务二:设计程序模块的流 ❖ 2、程序流程图 程图
Numbers_Click ( )方法流程图
《C#程序设计》
Operators_Click() 方法的流程图
《C#程序设计》
工作任务二:设计程序模块的流
❖ 细节问题
程图
1)在初始化的时候,应用给运算符赋什么初值 呢?
《C#程序设计》
❖ 1、知识准备——状态图
状态图(Statechart Diagram)是描述一个实 体基于事件反应的动态行为,显示了该实体 如何根据当前所处的状态对不同的事件做出 反应的。
状态图用于显示状态机(它指定对象所在的 状态序列)、使对象达到这些状态的事件和 条件、以及达到这些状态时所发生的操作。
状态机由状态组成,各状态由转移链接在一 起。
工作目标
❖ 终极目标:
完成一个整数四则运算的计算器
《C#程序设计》
工作目标
❖ 促成目标:
完成整数四则运算计算器整体设计——状态机分 析;
完成整数四则运算模块设计——流程分析; 完成整数四则运算计算器的程序界面设计及属性
设置; 完成整数四则运算器的程序编码; 对整数四则运算计算器进行必要的运行测试,如