python基礎 class8 體育競技分析

2021-10-04 02:40:38 字數 1901 閱讀 9243

# 體育競技分析問題

import random

def printintro():

print('''這個程式模擬兩個選手a和b的某種競技比賽

程式執行需要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 gameover(scorea, scoreb):

if (scorea >= 15) or (scoreb >= 15):

return true

else:

return false

def random():

return random.random()

def simonegames(proa, prob):

scorea, scoreb = 0, 0

serving = 'a'

while not gameover(scorea, scoreb):

if serving == 'a':

if random() < proa:

scorea += 1

else:

serving = 'b'

else:

if random() < prob:

scoreb += 1

else:

serving = 'a'

return scorea, scoreb

def simngames(proa, prob, n):

winsa, winsb = 0, 0

for i in range(n):

x, y = simonegames(proa, prob)

if x > y:

winsa += 1

elif y > x:

winsb += 1

return winsa, winsb

def printsummary(winsa, winsb):

n = winsa + winsb

print('競技分析開始,共模擬{}場比賽'.format(n))

print('選手a獲勝{}場比賽,勝率是'.format(winsa, winsa / n))

print('選手b獲勝{}場比賽,勝率是'.format(winsb, winsb / n))

def main():

printintro()

proa, prob, n = getinputs()

winsa, winsb = simngames(proa, prob, n)

printsummary(winsa, winsb)

try:

main()

except:

print('error')

左神演算法基礎class8 題目5母牛產子問題

母牛每年生乙隻母牛,新出生的母牛成長三年後也能每年生乙隻母牛,假設不會死。求n年後,母牛的數量。先列出圖表找規律 可以看出規律 今年生的牛等於去年牛的總和,再加上所有成熟的牛再生乙個 成熟的母牛數量 那麼成熟的牛的數量怎麼知道呢?根據題意實際就是三年前牛的總和 三年前所有的牛完全能保證成熟可以生育,...

Class 8 python 迴圈語句

例項一 迴圈語句 while a 0 while a 5 print while a a a 1else print eof n for for i in 4 3,2 1 print for i i 結果輸出 ps c users administrator desktop tmp python u...

python基礎篇 Class 類

class 類 特點 乙個抽象的物件,是物件導向語言的核心,類可以不繼承或多繼承。標識 class 例子 class a object 這是乙個演示的類 count a def init self,a self.a a def str self print count a s,list a s se...