python第五天 程序设计方法学

程序设计方法学

体育竞技分析

需求:如何科学分析体育竞技比赛
输入球员的水平,能否输出比赛成绩???
在这里插入图片描述

简单来说就是不断地进行比赛,最后选手的能力的而显示的输赢情况,会越来越精确

比赛规则
在这里插入图片描述
简单来说,两个人打乒乓球。

自定向下的方法:将总问题分解为很多个小问题,再划分为小问题,直到我们可以解决这个小问题,

自底向上的执行,分别执行每一个实际单元,进行测试,测试通过,组合测试。也就是小问题测试没问题,就合并另一个小问题称谓一个略大的问题,再进行测试,通过,再合并再测试。

程序总体框架及步骤:

  1. 打印程序的介绍性信息 -》printInfo()
  2. 获得程序运行的参数 -》getInput()
  3. 利用球员A和球员B的能力值,模拟N局比赛 -》 simNGames()
  4. 输出球员A和球员B获胜比赛的场次及概率 -》 printSummary()

定义四个函数来完成以上的功能。

printIntro():打印一些介绍函数

from random import random


def printIntro():
    print("这个程序模拟   两个选手A和B的某种竞技比赛")
    print("程序运行需要A和B的能力值(以0到1之间的小数表示)")

#获得用户输入的参数
def getInputs():
    a = eval(input("请输入选手A的能力值(0-1)"))
    b = eval(input("请输入选手B的能力值(0-1)"))
    n = eval(input("模拟比赛的场次"))
    return a,b,n


#打印结果
def printSummary(winsA,winsB):
    n = winsA + winsB
    print("竞技分析开始,共模拟{}场比赛".format(n))
    print("选手A获胜{}场比赛,占比{:0.1%}".format(winsA,winsA/n))
    print("选手B获胜{}场比赛,占比{:0.1%}".format(winsB,winsB/n))

#模拟N局 分解为模拟一局比赛
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值