模擬真實足球點球規則。
round表示輪數
round = 1
進球為1,不進為0,
a,b分別表示兩隊進球數。
只考慮前五輪的情況,后面一對一比較簡單就不寫了。
while(round<=5)
{
if a進球 a++;
if b進球 b++;
if a-b>5-round return a獲勝
if b-a>5-round return b獲勝
}
我檢驗了下,有個BUG,譬如啊,前四輪罰球完,a=2,b=3,最后一論a沒罰進,b就不用罰了(b++),
怎么體現下,想半天想不出,求助各位了。散分。
uj5u.com熱心網友回復:
while(round<=5){
a++
aLeftRound = 5-round
if a-b > bLeftRound a勝利
if b-a > aLeftRound b勝利
b++
bLeftRound = 5-round
}
各位看看這樣啊有什么漏洞
uj5u.com熱心網友回復:
while(++round<=5){
a++
aLeftRound = 5-round
if a-b > bLeftRound a勝利
if b-a > aLeftRound b勝利
b++
bLeftRound = 5-round
}
uj5u.com熱心網友回復:
round = 1a = 0
b = 0
bLeftRound = 5
while round <= 5:
print(round,a,b)
italiy = int(input("請輸入A隊是否進球"))
if italiy > 0:
a += 1
aLeftRound = 5-round
if a-b > bLeftRound:
print("A獲勝")
break
if b-a > aLeftRound:
print("B獲勝")
break
braze = int(input("請輸入B隊是否進球"))
if braze > 0:
b += 1
bLeftRound = 5-round
if a-b > bLeftRound:
print("A獲勝")
break
if b-a > aLeftRound:
print("B獲勝")
break
round +=1
while a == b:
print("前面打平,下面馬上一對一")
italiy = int(input("請輸入A隊是否進球"))
if italiy > 0:
a += 1
braze = int(input("請輸入B隊是否進球"))
if braze > 0:
b += 1
if a > b:
print("A獲勝")
break
elif a < b:
print("B獲勝")
break
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/40142.html
標籤:數據結構與算法
