简单计算器—实训报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux应用与编程实习报告

学院名称

专业班级

学生姓名

学号

指导教师

山东科技大学

一、实习题目: B2-简单计算器

二、实习时间:19周~ 20周实习地点: J13- 128

三、实习任务:

实现一个简单计算器,计算器包括加、减、乘、除四种运算。用户通过鼠标进行数据输入,输入的数据以及计算结果显示在文本框中

四、小组分工说明:独立完成

五、实习成绩

六、指导教师对实习的评语:

指导教师(签章):

2015年月日

目录

1. 概述 -------------------------------------------------------- 4

2. 相关技术 -------------------------------------------------- 4

2.1 QT中信号和槽 -------------------------------------- 4

2.2 字符串输出数据组 -------- 错误!未定义书签。

3. 需求分析 -------------------------------------------------- 5

4. 总体设计与详细设计 ----------------------------------- 5

4.1 系统模块划分 --------------------------------------- 5

4.2 主要功能模块 --------------------------------------- 5

5. 编码实现 -------------------------------------------------- 6 6.测试情况说明------------------------------------------- 15

7. 实训中遇到的主要问题及解决方法 ---------------- 16

8. 实训收获与体会 ---------------------------------------- 16

1. 概述

1.1 实训项目简介

本次实训项目是应用Linux系统中的QT编译器编写一个界面简洁,操作简单的简易计算器。该简易计算器运用的技术主要是Linux系统中QT编译器的一些函数以及指针等。1.2 基本功能

(1)通过鼠标点击接收数字键入以及运算符。

(2)能够进行简单的加减乘除四则运算。

(3)一键清空功能。

1.3 附加功能

(1)键入数字超过6位,输出窗口输出“error”提示。

(2)能够进行连续加法和减法混合运算,能够进行连续乘法和除法混合运算。

(3)键入的被除数为0时,输出窗口输出“被除数不能为0哦”提示。

(4)连续键入两个运算符时,输出窗口输出“只能输入一个运算符哦”提示。

(5)进行加减法与乘除法混合运算时,输出窗口输出“error”提示。

2. 相关技术

2.1 QT中信号和槽

信号槽机制与Windows下消息机制类似,消息机制是基于回调函数,Qt中用信号与槽来代替函数指针,使程序更安全简洁。

当对象改变其状态时,信号就由该对象发射(emit) 出去,而且对象只负责发送信号,它不知道另一端是谁在接收这个信号。这样就做到了真正的信息封装,能确保对象被当作一个真正的软件组件来使用。

槽用于接收信号,而且槽只是普通的对象成员函数。一个槽并不知道是否有任何信号与自己相连接。而且对象并不了解具体的通信机制。

2.2字符串输出数据组

为实现计算整式的显示,并且避免键入下一个数之前frist和second清除不净,在

calculor.h中定义字符串,把显示窗口中的数据捕捉到字符串中,并随第二个数一起显示,从而实现计算整式的显示。

str=ui->textEdit->toPlainText()+QString::number(int(key));

ui->textEdit->setText(str);

3. 需求分析(用面向对象方法给出系统的主要需求模型,略写)

● 3.1功能需求分析

基本功能:鼠标键入数字及运算符,进行简单的加减乘除四则运算。

拓展功能:进行连续加减或乘除运算,当出现输入被除数为0,输入位数过多,连续输入多个运算符等错误时,输出窗口提示相应错误。

● 3.2 数据需求分析

连续输入时的总式实时显示,结果的显示,错误类型的显示。

● 3.3 行为需求分析

鼠标键入数字及运算符。

● 3.4 其他需求

界面简单,操作简单。

4. 总体设计与详细设计

4.1 系统模块划分

简易计算器系统模块

模块名称功能简介

数字按键模块将键入的数字传到数据转换模块中

运算符按键模块进行判断是否连续运算,从数据计算模块中读取结果并显示数据转换模块键入多位数字的转化

数据计算模块判断运算符并进行计算

输入位数限制模块限制输入位数并进行错误提示

4.2 主要功能模块

4.1.1 系统主要类图

calculor

开始

4.1.2 简易计算器程序执行

流程图

否 是 否 否

是 否

5. 编码实现

calculor.cpp

#include "calculor.h"

#include "ui_calculor.h"

calculor::calculor(QWidget *parent) : QWidget(parent), 键入数字

键入=

键入运算符

输出结果

数字小于6位 结束

键入AC 输出error

相关文档
最新文档