博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
四则运算效能分析
阅读量:5886 次
发布时间:2019-06-19

本文共 2692 字,大约阅读时间需要 8 分钟。

 

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 cProfile import random import time start = 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 = 1 l1 = [] 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

你可能感兴趣的文章
拓展+属性
查看>>
struts2 常量
查看>>
端口的作用
查看>>
VS XCOPY
查看>>
完整的删除
查看>>
红帽(Red Hat Linux)下SVN服务器的安装与配置
查看>>
RecyclerView使用介绍
查看>>
Java里面使用Date.compareTo比较时间
查看>>
dnsmasq一次成功的配置
查看>>
std::ios_base::fmtflags orig std::streamsize prec
查看>>
linux GUI程序开发
查看>>
C++ 静态链表基本算法实现
查看>>
工具类
查看>>
vue-webpack 引入echarts 注意事项
查看>>
指针的应用
查看>>
ORACLE 总结
查看>>
实战部署FAST Search Server 2010 for SharePoint (转闪电)
查看>>
二.Python基本数据类型
查看>>
python常用模块---转载
查看>>
web框架-(七)Django补充---models进阶操作及modelform操作
查看>>