Advertisement
teslariu

piedra papel tijera

Jul 19th, 2022
1,259
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.63 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. #
  4. # Ej Difícil:
  5. """
  6. Script que simula el juego de piedra, papel o tijera. Juega un usuario
  7. contra la computadora. Primero, se debe pedir la cantidad de rondas del
  8. juego. Tras terminarlas, se debe indicar el score final y el ganador.
  9. Se puede usar random.choices() para elegir un elemento al azar dentro
  10. de una lista
  11. """
  12.    
  13. def menu():
  14.     return """
  15.    Menu de opciones:
  16.    1. Jugar contra la computadora
  17.    2. Salir
  18.    """
  19.    
  20. def ingresar_rondas():
  21.     while True:
  22.         rondas = input("Ingrese la cantidad de rondas: ")
  23.         if rondas.isdigit() and int(rondas) > 0:
  24.             rondas = int(rondas)
  25.             return rondas
  26.         else:
  27.             print("Error en el ingreso de la cantidad de rondas")
  28.    
  29. def jugar(rondas):
  30.     import random
  31.     pts_usuario = 0
  32.     pts_compu = 0
  33.     opciones = ["piedra","papel","tijera"]
  34.    
  35.     for ronda in range(rondas):
  36.         print(f"Ronda {ronda+1}")
  37.         while True:
  38.             opc_usuario = input("\nSeleccione su opción (piedra, papel o tijera): ")
  39.             if opc_usuario.lower() in opciones:
  40.                 break
  41.             else:
  42.                 print("Opción incorrecta")
  43.         opc_compu = random.choice(opciones)
  44.         print(f"La compu eligió {opc_compu}")
  45.        
  46.         gana_usuario = (opc_usuario == "papel" and opc_compu == "piedra") or \
  47.               (opc_usuario == "tijera" and opc_compu == "papel") or \
  48.               (opc_usuario == "piedra" and opc_compu == "tijera")
  49.        
  50.        
  51.         if opc_compu == opc_usuario:
  52.             pts_usuario += 1  # pts_usuario = pts_usuario + 1
  53.             pts_compu += 1
  54.             print("Ronda empatada")
  55.    
  56.                          
  57.         elif gana_usuario:
  58.             pts_usuario += 2
  59.             print("Ronda ganada por usuario")
  60.             print(f"Score parcial: usuario {pts_usuario} - compu {pts_compu}")
  61.            
  62.         else:
  63.             pts_compu += 2
  64.             print("Ronda ganada por la compu")
  65.             print(f"Score parcial: usuario {pts_usuario} - compu {pts_compu}")
  66.                  
  67.     return f"Score final: usuario {pts_usuario} - compu {pts_compu}"
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74. ######## main ##############
  75. print("""
  76.    Piedra, papel o tijera
  77.    ======================    
  78. """)
  79. while True:
  80.     print(menu())
  81.     opcion = input("Elija su opción: ")
  82.    
  83.     if opcion == "1":
  84.         rondas = ingresar_rondas()
  85.         print(jugar(rondas))
  86.        
  87.     elif opcion == "2":
  88.         print("Gracias por jugar con nosotros...")
  89.         break
  90.        
  91.     else:
  92.         print("Opción incorrecta...")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement