资料详情

Python实现简易计算器设计 课程论文+代码

头像

Python

编号:1738

目录

1 问题描述 2

2 需求分析 2

2.1 数据需求 2

2.2 功能需求 2

2.3 非功能需求 2

3 概要设计 3

3.1抽象数据类型 3

3.2 总体设计 3

3.3 功能模块设计

4 详细设计及系统实现

4.1 存储结构

4.2 核心算法 6

4.3 各功能实现 6

4.4 各功能模块具体实现样式 12

5 系统调试分析 14

6 课程设计总结 14

参考文献 1

附录:源码以及其它相关材料 1


1 问题描述 

1) 要求程序模仿Windows计算器,具有图形化界面,能够输入用户在键盘输入的表达式,也能够通过图形化界面进行输入。对包含加、减、乘、除、括号运算符指数函数、幂函数、三角函数、对数函数等常见的运算式进行求解;在数据输入完成后,如果需要放弃本次计算操作,可以利用程序中设置好的按键进行清零,并为下一次运算作准备;在计算器程序运行中,输入数据时如果遇到输入错误的情况,能够能过退格键进行删除,并且重新输入正确的数据;

2) 能够判定用户输入的表达式是否合法,并对不合法的表达式进行提示;

3) 能够保存历史运算表达式,用户可查看历史运算;

4) 用数据结构知识手动实现运算,并与系统调用方法进行对比,感受两者的时间复杂度和空间复杂度变化;

5) 实现一元多项式的运算

例:设有一元多项式Am(x)和Bn(x):

Am(x)=A0+A1x1+A2x2+A3x3+… +Amxm

Bn(x)=B0+B1x1+B2x2+B3x3+… +Bnxn

请实现求M(x)= Am(x)+Bn(x)、M(x)= Am(x)-Bn(x)和M(x)= Am(x)×Bn(x)。

要求结果M(x)中无重复阶项和无零系数项,并且输出结果有升幂和降幂两种排列情况。