Predecir el resultado de un juego de tenis de mesa.

 

 

1  # partido de bádminton predicción 
2  de Random importación Random
 3.  DEF printTips ():
 . 4      Imprimir ( " I Identificación del Estudiante: 2.019.310.143.143 " )
 5.      Imprimir ( " dos sencillos Este programa simula partido de tenis, la segunda ronda de clasificación del juego " )
 6      print ( " Cada ronda toma siete entradas y cuatro victorias " )
 7      print ( "El programa requiere el valor de habilidad de cada concursante (expresado como un decimal entre 0 y 1) " )
 8  def getInputs ():
 9      a = eval (input ( " Ingrese el valor de habilidad del jugador A (0-1): "))
 10      b = eval (input ( " Ingrese el valor de habilidad del jugador B (0-1): " ))
 11      c = eval (input ( " ingrese el valor de habilidad del jugador C (0-1): " ))
 12      d = eval (input ( " Ingrese el valor de habilidad del jugador D (0-1): " ))
 13      devuelva a, b, c, d
 14  def ModelNGames (powerA, powerB): # 7 juegos y 4 victorias 
15      winsA, winsB = 0, 0
 16      para i en el rango (7 ):
 17          scoreA, scoreB = ModelOneGame (powerA, powerB)
 18          si scoreA>scoreB:
 . 19              . Winsa + = 1
 20 es          la otra cosa :
 21 es              winsB + = 1.
 22 es      retorno Winsa, winsB
 23 es  DEF gameover (A, B):      # determina la carrera de victoria entradas 
24      IF a> 10 o b> 10 :
 25          IF ABS ( AB &)> 1. :
 26 es              devolver Verdadero
 27 de          la otra :
 28              de retorno Falso
 29  DEF Juez (Winsa, winsB):   # determina una victoria del juego 
30      SI . Winsa> = 4 o . winsB> = 4:
 31          return True
 32      else :
 33          return False
 34  def ModelOneGame (powerA, powerB): # 一 局 比赛
35      scoreA, scoreB = 0, 0
 36 serve      = " A " 
37      mientras  no está GameOver (scoreA, scoreB):
 38          si sirve == " A " :
 39              si es aleatorio () < potencia A:
 40                  puntaje A + = 1
 41              más :
 42                 = Sirviendo " B " 
43 es          la otra cosa :
 44 es              SI Random () < Powerb:
 45                  . ScoreB 1 = +
 46 es              la otra cosa :
 47                  Porción = " A " 
48      de retorno scoreA, scoreB
 49  DEF printResult1 (Winsa, winsB): # La primera ronda primera Resultado de campo 
50      si gana A> gana B:
 51          print ( "El puntaje de A y B es {}: {}, el jugador A gana, la promoción es exitosa " .formato ( gana A, gana B))
 52      más :
 53         Imprimir ( " A} y {la puntuación B es: {}, los jugadores B ganan éxito la promoción " .formato (Winsa, winsB))
 54 es  DEF printResult2 (Winsa, winsB): # resultado de la primera ronda de la segunda del 
55      SI Winsa > winsB:
 56          print ( "El puntaje de C y D es {}: {}, el jugador C gana y avanza con éxito " .format (winsA, winsB))
 57      más :
 58          print ( "El puntaje de C y D es {}: {} , los jugadores ganan D éxito la promoción " .formato (Winsa, winsB))
 59  DEF printResult3 (WINSE, winsF, ganador): # salidas de dos resultados 
60      SI WINSE> winsF:
 61 es         print ( "La puntuación es {}: {}, el jugador {} ganó el campeonato " .format (winsE, winsF, ganador))
 62      más :
 63          print ( "La puntuación es {}: {}, el jugador {} ganó el campeonato " .format (winsE, winsF, ganador))
 64  def main ():
 65      printTips ()
 66      powerA, powerB, powerC, powerD = getInputs ()
 67      winsA, winsB = ModelNGames (powerA, powerB)
 68      printResult1 (winsA, winsB)
 69      winsC , winsD = ModelNGames (powerC, powerD)
 70      printResult2 (winsC, winsD)
 71      E =max (Winsa, winsB)
 72      F. = max (winsC, winsD)
 73 es      PowerE, powerf = 0,0
 74      SI   E == Winsa y F. == winsC: # capacidad de encontrar dos valores de corte 
75          PowerE = PowerA
 76          powerf = POWERC
 77      elif e == winsB y F. == winsC:
 78          powerE = Powerb
 79          powerf = POWERC
 80      elif e == Winsa y F. == winsD:
 81          powerE = PowerA
 82         powerF = powerD
 83      elif E == winsB y F == winsD:
 84          powerE = powerB
 85          powerF = powerD
 86      winsE, winsF = ModelNGames (powerE, powerF)
 87      si winsE> winsF:   # 找到 冠军
88          si powerE == powerA:
 89              ganador = ' A ' 
90          más :
 91              ganador = ' B ' 
92      más :
 93          si powerF ==powerC:
 94              ganador = ' C ' 
95          más :
 96              ganador = ' D '  
97      printResult3 (winsE, winsF, ganador)
 98 main ()

Nota: Este código solo es adecuado para la promoción de dos dobles individuales (A y B, C y D), puede juzgar al campeón.

Supongo que te gusta

Origin www.cnblogs.com/LSH1628340121/p/12758387.html
Recomendado
Clasificación