- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
本章大纲
1.计算思维
2.程序设计方法论
3.计算生态
4.基本的python内置函数
1.计算思维
人类在认识世界、改造世界过程中表现出三种基本的思维特征:
以实验和验证为特征的实证思维,以学科为代表;以推理和演绎
为特征的逻辑思维,以数学学科为代表;以设计和构造为特征的计算
思维,以计算机学科为代表。
计算思维的本质是抽象(ion)和自动化(Automation)
2.程序设计方法论
一个解决复杂问题行之有效的方法被称作自顶而下的设计方法,其基本
思想是以一个总问题开始,试图把它表达为很多小问题组成的解决方案。再
用同样的技术依次攻破每个小问题,最终问题变得非常小,以至于可以很容
易解决。然后只需把所有的碎片组合起来,就可以得到一个程序。
3.python的内置函数
4.实例
“体育分析”实例n两个球员在一个有四面边界的场地上用球拍击球。开
始比赛时,其中一个球员首先发球。接下来球员交替击球,直到可以判定得分为
止,这个过程称为回合。当一名球员未能进行一次合法击打时,回合结束。
未能打中球的球员输掉这个回合。如果输掉这个回合的是发球方,那么发球
权交给另一方;如果输掉的是接球方,则仍然由这个回合的发球方继续发球。
总之,每回合结束,由赢得该回合的一方发球。球员只能在他们自己的发球
局中得分。首先达到15分的球员赢得一局比赛。
自顶向下设计中最重要的是顶层设计。体育
分析从用户处得到模拟参数,最后输出结果。
下面是一个基础设计分析:
•步骤1:打印程序的介绍;
•步骤2:获得程序运行需要的参数:probA,probB,n;
•步骤3:利用球员A和B的能力值probA和probB,模拟n次比赛;•步
骤4:输出球员A和B获胜比赛的场次及概率。
通过以上分析:问题被划分为了4个独立的函数:printIntro(),
getInputs(),simNGames()和printSummary()。每层设计中,参数和返回
值如何设计是重点,其他细节
可以暂时忽略。确定的重
要特征而忽略其它细节过程称
为抽象。抽象是一种基本设计
方法,自顶向下的设计过程可
以看作是发现功能并抽象功能
的过程。
1、print_Intro()函数应该输出一个程序介绍,这个功能的Python代码如下,
这个函数由Python基本表达式组合,不增加或改变程序结构。
2、get_Inputs()函数根据提示得到三个需要返回主程序的值,代码如下。
3、sim_game()函数是整个程序的,其基本思路是模拟n场比赛,并
记录每个球员赢得了多少比赛。
4、代码中设计了get_one_score()函数,用于模拟一场比赛,这
个函数需要知道每个球员的概率,返回两个球员的最终得分
5、接下来需要实现get_one_score()函数。
为了模拟一场比赛,需要根据比赛规则来编写代码,两个球员A和B持
续对攻直至比赛结束。可以采用无限循环结构直到比赛结束条件成立。同时,
需要记录比赛得分,保留发球局标记
在模拟比赛的循环中,需要考虑单一的发球权和比分问题,通过随机数
和概率,可以确定发球方是否赢得了比分(random()prob)。如果球员A
发球,那么需要使用A的概率,接着根据发球结果,更新球员A得分或是将
球权交给球员B。
7、最后是print_res()函数,其Python代码如下。
自顶向下设计
文档评论(0)