课后作业2:个人项目(计算器)-程序员宅基地

技术标签: python  

1.我的远程仓库的码云项目地址https://gitee.com/PJ98H/personal_project41656/commit/e5c96bfbdb7b47f76bd9bc843facdec189a0938f

2.我的PSP表格,表格中的任务估计花费时间以及实际花费时间。

3.解题思路描述。即刚开始拿到题目后,如何思考,如何找资料的过程。

审题:实现一个能够对表达式进行求值的控制台程序。程序至少能支持简单的加减乘除运算以及简单的混合四则运算,若能力与时间足够可以考虑让程序可以支持括号,分数运算等。另:控制台程序:可以通过命令行运行该程序并向该程序传递参数。

确定编程语言:Python

Fork码云项目到自己的仓库:在码云仓库中新建2016035107172的文件夹clone到自己的本地。

思考:大二学过类似的计算器编写代码,所以较为熟悉

查资料:百度,CSDN,特别感谢百度翻译。。哈哈

4.设计实现过程。

(1)能支持两个操作数,一种运算符。

(2)能支持两个操作数的简单四则运算(只有一个操作符)

(3)能支持简单混合四则运算(最多有3个操作符,没有括号)

(4)能支持稍微复杂的混合四则运算(最多3个操作符,有括号)

5.程序设计与实现过程。

(1)代码组织情况:良好

(2)关键函数流程图

(3)说明实现算法的关键部分:主要使用逆波兰算法

对于这次的计算器要求是3个运算符,4个运算符,不能像以往的使用if,elif,else了,改用比较方便的逆波兰算法。

(4)实现过程中遇到的问题与困难:对于不用eval的计算器不是很了解,在编写代码中遇到困难,不是很方便。

6.

7.在你实现完程序之后,在附录提供的PSP表格记录下你在程序的各个模块上实际花费的时间。

 

转载于:https://www.cnblogs.com/P98H/p/9932878.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/avt73695/article/details/101577589

智能推荐

使用heroku和mLab部署项目(Nodejs)-程序员宅基地

文章浏览阅读613次。使用heroku和mLab部署项目(Nodejs)1.首先在官网上申请一个账号2.安装Heroku Toolbelt3.创建程序4.用mLab配置数据库5.更改项目连接方式

redis.conf配置说明_tcp-keepalive 0-程序员宅基地

文章浏览阅读1.6w次。当前所用Redis版本为2.6.14,以内Redis.conf中已有比较详细的注释,本文多为翻译,外加个人实际配置过程中遇到的一些问题。基本设置1. 备释当配置中需要配置内存大小时,可以使用 1k, 5GB, 4M 等类似的格式,其转换方式如下(不区分大小写):1k => 1000 bytes1kb => 1024 bytes1m => 1000000 _tcp-keepalive 0

Hard Computing VS Soft Computing-程序员宅基地

文章浏览阅读1k次。Hard and Soft Computing,There are many tools in mathematics, but all of them can divide into Hard and Soft two kinds. Such as A) Traditional physical is focus on Hard Computing, whereas B) In 17

Oracle V$SESSION详解-程序员宅基地

文章浏览阅读1.4k次。V$SESSION是APPS用户下面对于SYS.V_$SESSION 视图的同义词。 在本视图中,每一个连接到数据库实例中的session都拥有一条记录。包括用户session及后台进程如DBWR,LGWR,arcchiver等等。 V$SESSION中的常用列 V$SESSION是基础信息视图,用于找寻用户SID或SADDR。不过,它也有一

linux剪贴板原理-程序员宅基地

文章浏览阅读435次。在 X window system中,窗体之间传输数据,使用的是“selection”,也就是常说的“剪贴板”  X window system中支持任意的selection.  其中,最重要的是PRIMARY selection,然后是CLIPBOARD selection,还有已经废弃的CUT_BUFFER(0~7)。而 X Window 把这种叫做“..._linux剪切板原理

apue.h头文件(unix环境高级编程)-程序员宅基地

文章浏览阅读3.3k次。apue.h是作者自己写的一个文件,包含了常用的头文件,系统不自带。其中包含了常用的头文件,以及出错处理函数的定义。使用起来确实很方便。 apue.h内容如下: #ifndef _APUE_H #define _APUE_H #define _XOP

随便推点

uni-app封装request-程序员宅基地

文章浏览阅读421次。uni-app封装request请求1.request.js2.使用最近再接触uniapp,由于用习惯了vue的axios。 所以决定自己简单封装一个request请求1.request.js在这里插入代码片2.使用...

使用jenkins配置job-设置定时执行-程序员宅基地

文章浏览阅读3.2k次。配置-构建触发器Build periodically  无论数据有无变化,均执行定时化的构建任务Poll SCM  定时轮询数据变化,如果有变化,则执行构建任务若不考虑代码改动,则设置Build periodically,如 H 5 * * *,表示每天早上5点执行

HOG(Histograms of Oriented Gradients )梯度方向直方图-程序员宅基地

文章浏览阅读2.1k次。方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子。此方法使用了图像的本身的梯度方向特征,类似于边缘方向直方图方法,SIFT描述子,和上下文形状方法,但其特征在于其在一个网格密集的大小统一的方格单元上计算,而且为了提高精确度使用了重叠的局部对比度归一化的方法。 这篇文章的

Git 初接触 (七)git pull 拉取远程最新更新并合并_git 拉取最新代码-程序员宅基地

文章浏览阅读1.3w次,点赞3次,收藏9次。当我们把代码托管到git远程服务器上的时候,如果有人对代码进行了更新并提交到了远程服务器,这时如果我们需要拉取最新的更新到我们本地的工作区就需要使用 git pull 命令git pull 的作用拉取远程最新更新并与本地代码合并现在我将以为在阿里云上搭建的git服务器为例,为大家讲解一下如何使用git pull 命令首先登录 git 服务器 并查看 git log 如下图在本地 使用 git_git 拉取最新代码

pytorch常见问题-踩雷_pytorchbs设为1也不行-程序员宅基地

文章浏览阅读300次。1 torch等库在cmd中导入成功但在jupyter notebook中导入失败解决:1,打开anaconda prompt2,输入conda install nb_conda2 多进程处理错误 “损坏的管道”ForkingPickler(file, protocol).dump(obj)BrokenPipeError: [Errno 32] Broken pipe解决:在父进程发送数据完成之前,子进程先结束就会发生此错误。这说明你的代码可能有问题。你可以通过将 DataLo_pytorchbs设为1也不行

Epoch不仅过时,而且有害?Reddit机器学习板块展开讨论-程序员宅基地

文章浏览阅读74次。点击上方“视学算法”,选择加"星标"或“置顶”重磅干货,第一时间送达梦晨 发自 凹非寺 量子位 报道 | 公众号 QbitAI有一天,一个调参侠在训练一个深度学习模型,要用...