代码github地址:https://github.com/yiduobaozhi/-1

PSP表格:

预测时间(分钟)

planning

计划

15

Estimate

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

100

Development

开发

15

Analysis

需求分析

10

Design Spec

生成设计文档

10

Design Review

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

0

Coding Standerd

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

5

Design

具体设计

3

Coding

具体编码

120

Code Review

代码复审

3

Text

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

10

Reporting

报告

7

Text Report

测试报告

7

Size Measurement

计算工作量

10

Postmortem & Process Improvement Plan

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

12

解题思路:

(1)寻找一种可以用于真分数的函数

(2)随机生成几个数或者几个分子分母

(3)设计代码,实现加减乘除基本功能

(4)查询效能分析相关资料,尝试优化代码

设计过程:
分开为整数部分计算和分数部分计算,分数调用Fraction函数进行计算,使用random随机生成数字,用于计算四则计算

具体代码:

from fractions import Fraction #导入分数函数
import numpy as np
import cProfile
def size():
print("你需要算的是分数还是整数?")
a=input()
if a=="分数":
x = np.random.randint(1,100)
y = np.random.randint(1,100)
e = input("加减乘除?")
b = np.random.randint(1,100)
c = np.random.randint(1,100)
print(x,y,b,c)
if e=="+":
print("答案为:%s+%s=%s"%(Fraction(x,y),Fraction(b,c),Fraction(x, y) + Fraction(b, c)))
elif e=="-":
print("答案为:%s-%s=%s" % (Fraction(x, y), Fraction(b, c), Fraction(x, y) - Fraction(b, c)))
elif e=="*":
print("答案为:%s*%s=%s" % (Fraction(x, y), Fraction(b, c), Fraction(x, y) * Fraction(b, c)))
elif e=="/":
print("答案为:%s/%s=%s" % (Fraction(x, y), Fraction(b, c), Fraction(x, y) / Fraction(b, c)))
elif a=="整数":
x1=np.random.randint(1,100)
y1=np.random.randint(1,100)
print(x1,y1)
e1=input("加减乘除?")
if e1 == "+":
print("答案为:%s+%s=%s" %(x1, y1, x1+y1))
elif e1== "-":
print("答案为:%s-%s=%s" %(x1, y1, x1-y1))
elif e1 == "*":
print("答案为:%s*%s=%s" %(x1, y1, x1 * y1))
elif e1=="/":
print("答案为:%s/%s=%s" %(x1, y1, x1 / y1))
cProfile.run(size)

测试运行:

效能分析:

PSP表格:

实际时间(分钟)

nning

计划

40

Estimate

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

100

Development

开发

9

Analysis

需求分析

5

Design Spec

生成设计文档

1

Design Review

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

1

Coding Standerd

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

1

Design

具体设计

21

Coding

具体编码

100

Code Review

代码复审

3

Text

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

5

Reporting

报告

60

Text Report

测试报告

20

Size Measurement

计算工作量

2

Postmortem & Process Improvement Plan

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

1

python实现四则运算和效能分析的更多相关文章

  1. python词频统计及其效能分析

    1) 博客开头给出自己的基本信息,格式建议如下: 学号2017****7128 姓名:肖文秀 词频统计及其效能分析仓库:https://gitee.com/aichenxi/word_frequenc ...

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

    第五次作业--效能分析与几个问题(个人作业) 前言 阅读了大家对于本课程的目标和规划之后,想必很多同学都跃跃欲试,迫不及待想要提高自身实践能力,那么就从第一个个人项目开始吧,题目要求见下. 阅读 阅读 ...

  3. 《构建之法》教学笔记——Python中的效能分析与几个问题

    <构建之法:现代软件工程>中第2章对效能分析进行了介绍,基于的工具是VSTS.由于我教授的学生中只有部分同学选修了C#,若采用书中例子讲解,学生可能理解起来比较困难.不过所有这些学生都学习 ...

  4. 《软件工程和Python》PYTHON效能分析和Django

    资料汇总网站:http://www.yzhiliao.com/my/course/55 一..作业下面两个题目任选一题: (1)运用jieba库分词(或者你喜欢的其他库),并把代码发到git上去(不发 ...

  5. [python 译] 基于面向对象的分析和设计

    [python 译] 基于面向对象的分析和设计 // */ // ]]>   [python 译] 基于面向对象的分析和设计 Table of Contents 1 原文地址 2 引言 2.1 ...

  6. python编写网络抓包分析脚本

    python编写网络抓包分析脚本 写网络抓包分析脚本,一个称手的sniffer工具是必不可少的,我习惯用Ethereal,简单,易用,基于winpcap的一个开源的软件 Ethereal自带许多协议的 ...

  7. C#词频统计 效能分析

    在邹老师的效能分析的建议下对上次写过的词频统计的程序进行分析改进. 效能分析:个人很浅显的认为就是程序的运行效率,代码的执行效率 1.VS 提供了自带的分析工具:performance tool (性 ...

  8. python 多线程日志切割+日志分析

    python 多线程日志切割+日志分析 05/27. 2014 楼主最近刚刚接触python,还是个小菜鸟,没有学习python之前可以说楼主的shell已经算是可以了,但用shell很多东西实现起来 ...

  9. Python 优化第一步: 性能分析实践 使用cporfile+gprof2dot可视化

    拿来主义: python -m cProfile -o profile.pstats to_profile.py gprof2dot -f pstats profile.pstats |dot -Tp ...

随机推荐

  1. 2、Libgdx配置你的开发环境(Eclipse,Intellij IDEA,NetBeans)

    Libgdx 项目使用 Gradle管理依赖,构建过程和IDE整合.这使得你可以使用你喜欢的开发环境开发你的应用.不要提交跟IDE的特定文件到你的源码控制系统中. 配置Eclipse 要想通过Ecli ...

  2. hive语句嵌入python脚本(进行map和reduce,实现左外连接)

    在Hive语句中使用脚本(如python和shell)进行map和reduce:利用命令transform(或者指定map和reduce),配合加入的脚本文件add file 请看:http://ww ...

  3. C语言中 sscanf 的用法

    名称: sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: Int sscanf( string str, string fmt, mixed var1, mixed var2 ...

  4. mysql进阶(十九)SQL语句如何精准查找某一时间段的数据

    SQL语句如何精准查找某一时间段的数据 在项目开发过程中,自己需要查询出一定时间段内的交易.故需要在sql查询语句中加入日期时间要素,sql语句如何实现? SELECT * FROM lmapp.lm ...

  5. 【翻译】Siesta事件记录器入门

    原文:Getting started with the Siesta event recorder 作者:Mats Bryntse 随着事件记录器功能的发布越来越近,我们准备了一下入门指南,向大家展示 ...

  6. Leetcode_202_Happy Number

    + 92 = 82 82 + 22 = 68 62 + 82 = 100 12 + 02 + 02 = 1 思路: (1)题意为判断给定的整数是否为一个"快乐的数",所谓快乐的数需 ...

  7. MT6592 经验积累

    1.build/target/product/xxxx.mk  新项目clone后,需要修改这里 如:build/target/product/x160v.mk PRODUCT_MODEL :=Phi ...

  8. android studio比较长用的几款插件

    不懂安装studio插件,看参考博文:android stuido插件安装:http://blog.csdn.net/liang5630/article/details/46372447 1.Butt ...

  9. Hadoop RPC

    hadoop rpc机制 && 将avro引入hadoop rpc机制初探 1 RPC RPC(Remote Procedure Call)--远程过程调用,它是一种通过网络从远程计算 ...

  10. Dubbo性能调优参数及原理

    本文是针对 Dubbo 协议调用的调优指导,详细说明常用调优参数的作用域及源码. Dubbo调用模型 常用性能调优参数 参数名 作用范围 默认值 说明 备注 threads provider 200 ...