Advertisement
teslariu

piedra papel tijera

Nov 25th, 2022
1,087
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.26 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3.  
  4. # Implementar un juego de piedra, papel o tijera, humano vs computadora.
  5. # Se deben seleccionar la cantidad de rondas a jugar y mostrar el resultado
  6. # parcial después de cada ronda y el resultado final, indicando el
  7. # ganador. Debe tener opción de jugar nuevamente
  8.  
  9. import random
  10.  
  11. def menu():
  12.     return """
  13.    *-------------------*
  14.      Menu de opciones
  15.    1. Jugar una partida
  16.    2. Salir
  17.    *-------------------*
  18.    """
  19.  
  20. def ingresar():
  21.     while True:
  22.         rondas = input("Ingrese las rondas a jugar: ")
  23.         if rondas.isdecimal() and int(rondas) != 0:
  24.             return int(rondas)
  25.         print("Error, debe ingresar un numero entero mayor a cero")
  26.        
  27.  
  28. def jugar(rondas):
  29.     pts_usuario = 0
  30.     pts_compu = 0
  31.     opciones = ["piedra", "papel", "tijera"]
  32.    
  33.     for ronda in range(rondas):
  34.        
  35.         # Los jugadores eligen su mano
  36.        
  37.         print(f"\n Ronda {ronda + 1}")
  38.         while True:
  39.             valor_usuario = input("Elija piedra, papel o tijera: ")
  40.             # lower() pasa todo a minúscula
  41.             # strip() borra los espacios en blanco al principio y final
  42.             if valor_usuario.lower().strip() in opciones:
  43.                 break
  44.             else:
  45.                 print("Opción incorrecta...")
  46.         valor_compu = random.choice(opciones)
  47.         print(f"La compu eligió {valor_compu}")
  48.  
  49.  
  50.         # vemos quien gano
  51.         if valor_compu == valor_usuario:
  52.             pts_usuario = pts_usuario + 1
  53.             pts_compu = pts_compu + 1
  54.             print("Ronda empatada")
  55.             print(f"Resultado parcial: compu {pts_compu} - usuario {pts_usuario}")
  56.        
  57.            
  58.         elif (valor_usuario == "piedra" and valor_compu == "tijera") or \
  59.             (valor_usuario == "tijera" and valor_compu == "papel") or \
  60.             (valor_usuario == "papel" and valor_compu == "piedra"):
  61.                 pts_usuario = pts_usuario + 2
  62.                 print("Ronda ganada por usuario")
  63.                 print(f"Resultado parcial: compu {pts_compu} - usuario {pts_usuario}")
  64.        
  65.         else:
  66.             pts_compu = pts_compu + 2
  67.             print("Ronda ganada por la compu")
  68.             print(f"Resultado parcial: compu {pts_compu} - usuario {pts_usuario}")
  69.        
  70.    
  71.     # vemos quien ganó la partida:
  72.     if pts_compu > pts_usuario:
  73.         print("Partida ganada por la compu... jajajaj")
  74.         print(f"Resultado final: compu {pts_compu} - usuario {pts_usuario}")
  75.        
  76.     elif pts_compu < pts_usuario:
  77.         print("Partida ganada por el usuario... grrrr")
  78.         print(f"Resultado final: compu {pts_compu} - usuario {pts_usuario}")
  79.        
  80.     else:
  81.         print("Partida empatada... hmmmm")
  82.         print(f"Resultado final: compu {pts_compu} - usuario {pts_usuario}")
  83.        
  84.        
  85.  
  86.  
  87.  
  88. print("Piedra, papel o tijera: humano vs computadora")
  89.  
  90. while True:
  91.     print(menu())
  92.    
  93.     opcion = input("Ingrese una opcion: ")
  94.    
  95.    
  96.     if opcion == "1":
  97.         rondas = ingresar()
  98.         jugar(rondas)
  99.    
  100.        
  101.     elif opcion == "2":
  102.         print("Gracias por jugar conmigo.... Hasta la próxima...")
  103.         break
  104.    
  105.        
  106.     else:
  107.         print("Opción incorrecta")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement