四则运算效能分析

Github项目地址:https://github.com/lsk-lsk/Python

估计将在程序的各个模块的开发上耗费的时间:


预测时间(分钟)


Planning


计划


5


Estimate


估计这个任务需要多少时间


180


Development


开发


15


Analysis


需求分析


15


Design Spec


生成设计文档


5


Design Review


设计复审(和同事审核设计文档)


5


Coding Standerd


代码规范(为目前的开发制定合适的规范)


5


Design


具体设计


5


Coding


具体编码


60


Code Review


代码复审


20


Text


测试(自测,修改代码,提交修改)


10


Reporting


报告


10


Text Report


测试报告


10


Size Measurement


计算工作量


5


Postmortem & Process Improvement Plan


事后总结,并提出过程改进计划


10

 解题思路描述:

(1)为了便于测试,随机自动生成小学四则运算题目,用到random库

(2)选择效能分析工具cProfile和time进行测试

设计实现过程:使用了3个函数,分别为test1(),test2(),cal(),其中test1(),test2()用来生成四则运算题目,cal()用来计算结果并判断是否正确

代码说明:

import cProfileimport randomimport timestart = time.time()

def test1(t):    s1 = random.randint(1,10)    s2 = random.randint(1,10)    s3 = random.choice([‘+‘,‘-‘,‘*‘,‘/‘])    cal(s1,s2,s3,t)

def test2(t):    s1 = random.randint(1,10)    s2 = random.randint(s1,11)    s3 = random.randint(1,10)    s4 = random.randint(s3,11)    s5 = random.choice([‘+‘,‘-‘])    sr = "第" + str(t) + "题:" + str(s1) + ‘÷‘+ str(s2) + s5+str(s3) + ‘÷‘+ str(s4) + ‘=‘    l1.append(sr)    if s5 == ‘+‘:        l2.append(s1 / s2 + s3 / s4)    else:        if s1 / s2 - s3  / s4 > 0:            l2.append(s1 / s2 - s3 / s4)        else:            sr = "第" + str(t)  +"题:" + str(s3) +  ‘÷‘+ str(s4) + s5 + str(s1)  +  ‘÷‘ + str(s2) + ‘=‘            l2.append(s3 / s4 - s1  /s2)def cal(s1,s2,s3,t):    sr = "第" + str(t) +  "题:" + str(s1) + s3 + str(s2) +  ‘=‘    if s3 == ‘+‘:        l2.append(s1 + s2)    elif s3 == ‘-‘:        if s1 >= s2:            l2.append(s1 - s2)        else:            sr = "第" + str(t) + "题:" + str(s2) + s3 + str(s1) + ‘=‘            l2.append(s2 - s1)    elif s3 == ‘*‘:        sr = "第" + str(t) + "题:" + str(s1) + ‘x‘ + str(s2) + ‘=‘        l2.append(s1 * s2)    elif s3 == ‘/‘:        sr = "第" + str(t) + "题:" + str(s1) + ‘÷‘ + str(s2) + ‘=‘        l2.append(s1 / s2)    l1.append(sr)t = 1l1 = []l2 = []

while t <= 10:    if t <= 5:        test1(t)    elif t <= 10:        test2(t)    print(l1[t - 1])    n=eval(input())    if l2[t -1] == n:        print("回答正确!")    else:        print("回答错误!")    t += 1

cProfile.run(‘cal‘)cProfile.run(‘test1‘)cProfile.run(‘test2‘)end=time.time()print(end-start)

测试运行:

性能分析:

 实际花费时间:


实际时间(分钟)


nning


计划


10


Estimate


估计这个任务需要多少时间


205


Development


开发


12


Analysis


需求分析


18


Design Spec


生成设计文档


5


Design Review


设计复审(和同事审核设计文档)


5


Coding Standerd


代码规范(为目前的开发制定合适的规范)


5


Design


具体设计


5


Coding


具体编码


80


Code Review


代码复审


20


Text


测试(自测,修改代码,提交修改)


5


Reporting


报告


15


Text Report


测试报告


10


Size Measurement


计算工作量


5


Postmortem & Process Improvement Plan


事后总结,并提出过程改进计划


10

原文地址:https://www.cnblogs.com/junkunjuan/p/8877926.html

时间: 2024-10-16 00:35:54

四则运算效能分析的相关文章

自动生成小学四则运算题目并进行效能分析-改进版

github地址:https://github.com/lzhida/First-assignment/tree/newbranch 改进: 可以删除一些无意义的括号 题目要求: 1.能自动生成小学四则运算题目,并且不能出现负数: 2.支持真分数四则运算 PSP表格     预计耗时(分钟) 是实际耗时(分钟) Planning 计划 30 30 ·Estimate 估计这个任务需要多少时间 180 240 Development 开发 150 180 ·Analysis 需求分析 5 10 ·

第五次作业——python效能分析与几个问题(个人作业)

第五次作业--效能分析与几个问题(个人作业) 前言 阅读了大家对于本课程的目标和规划之后,想必很多同学都跃跃欲试,迫不及待想要提高自身实践能力,那么就从第一个个人项目开始吧,题目要求见下. 阅读 阅读<构建之法>第一章至第三章的内容,并在下方作业里体现出阅读后的成果.特别是第2章中的效能分析及个人软件开发流程(PSP). 参考文章: <构建之法>教学笔记--Python中的效能分析与几个问题 四则运算器效能分析 软工第2次作业-四则运算器 题目描述 可以选择以下题目(或者自主选择题

第二周-频统计效能分析

根据作业要求对个人项目词频统计进行效能分析 工具:vs2015自带的效能分析工具: 1.第一次分析结果 string.split()方法和dictionary.contain()方法占比例较高; 由于水平问题暂时未想到解决方案,会继续探索,完善个人项目;

“四则运算2”分析报告

“四则运算2”分析报告 一.设计思路 初步设计思路: 1. 题目不重复先使用srand函数,生成两个做运算的随机数,再生成一个随机数,控制运算符号. 2. 是否有乘除法,数值范围,负数,余数,分数可以让用户选择.根据用户选择的结果,在每个函数之前根据用户的选择来执行不同的代码. 3. 把生成的每一个新的算式放在一起,每生成一个新的算式要验证是否与之前生成的算式重复,用字符串比如来做,如果重复就重新生成一个新的算式. 4. 打印只要用两个用户输入的变量就可以控制,一个控制打印的张数,一个控制打印每

现代软件工程讲义 2 开发技术 - 效能分析

9.4  VSTS 效能分析工具 啊,效能分析,Performance!这是每一个程序员都梦想的事儿,让自己的程序跑得又快又好,最好是比别的同学快一个数量级,别人的程序是O(N^2),而我的程序是O(n*logN),或者是O(N),这是多爽的一项成就呀!VSTS提供了方便的效能分析工具,让我们能很快地找到程序的效能瓶颈,从而能有的放矢,改进程序.下面我们看一个具体的例子. 和同学们的作业类似,有这样一道题: 写一个程序,分析一个文本文件中各个词出现的频率,并且把频率最高的10个词打印出来. 果冻

效能分析——词频统计的java实现方法的第一次改进

java效能分析可以使用新版本jdk自带的jvisualvm工具进行统计 由于词频统计的运行在本人使用的机器上运行很快,无法被jvisualvm捕捉到线程的运行,所以捕捉的是eclipse的运行波动间接反映词频统计的效能 捕捉到的快照如下: 词频统计处理的文件为WarAndPeace,大小3282KB约3.3MB,输出结果到文件 在程序本身内开始和结束分别加入时间戳,差值平均为480-490ms.

2017年软件工程第三次作业-2效能分析

要求0 以 战争与和平 作为输入文件,重读向由文件系统读入.连续三次运行,给出每次消耗时间.CPU参数       首先,我下载ptime.exe,不知道什么原因我下载下来以后运行老出现闪退现象.一直没法使用.我就接下来开始下载visual studio 2015,但是下载了一下午就是下不下来,我也很苦恼啊,电脑还是变成了巨难用,我下载的时候大概是缺少很多插件,我也不懂了.然后通过请教学长和同学,我使用了Very Sleepy CS软件来对功能进行效能分析. 由于我上次作业功能四没有实现,我没办

第三次作业-效能分析

一   对本周作业中的功能4(仅由文件重定向读入,不由控制台输入)做效能分析 1.cpu使用百分比 要求0 以 战争与和平 作为输入文件,重读向由文件系统读入.连续三次运行,给出每次消耗时间.CPU参数. (2分) Windows系统推荐使用 ptime.exe. 截图如下: 测试一: 测试二 测试三 总结时间   第一次 第二次 第三次 测试时间 141.063 135.549 136.606 要求1 给出你猜测程序的瓶颈.你认为优化会有最佳效果,或者在上周在此处做过优化 (或考虑到优化,因此

第三周——效能分析

本周效能分析作业要求:https://edu.cnblogs.com/campus/nenu/SWE2017FALL/homework/956 HTTPS地址:https://git.coding.net/jyj5951/wf.git Part one 准备工作   在开始性能分析前,我阅读了<构建之法>29-34页的"2.2性能分析工具"和邹欣老师有关效能分析的博客(博客地址:http://www.cnblogs.com/xinz/archive/2011/11/20/2