teslariu

juego piedra papel tijera

May 20th, 2023
1,181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.52 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. import time
  11.  
  12. def borrarPantalla():
  13.     import os
  14.     if os.name == "posix":
  15.         os.system ("clear")
  16.     else:
  17.         os.system ("cls")
  18.  
  19. def menu():
  20.     return """
  21.    *-------------------*
  22.      Menu de opciones
  23.    1. Jugar una partida
  24.    2. Salir
  25.    *-------------------*
  26.    """
  27.  
  28. def ingresar():
  29.     while True:
  30.         rondas = input("Ingrese las rondas a jugar: ")
  31.         if rondas.isdecimal() and int(rondas) != 0:
  32.             return int(rondas)
  33.         print("Error, debe ingresar un numero entero mayor a cero")
  34.        
  35.  
  36. def jugar(rondas):
  37.     pts_usuario = 0
  38.     pts_compu = 0
  39.     opciones = ["piedra", "papel", "tijera"]
  40.    
  41.     for ronda in range(rondas):
  42.         borrarPantalla()
  43.         # Los jugadores eligen su mano
  44.         print(f"\n Ronda {ronda + 1} de {rondas}")
  45.         while True:
  46.             valor_usuario = input("Elija piedra, papel o tijera: ")
  47.             # lower() pasa todo a minúscula
  48.             # strip() borra los espacios en blanco al principio y final
  49.             if valor_usuario.lower().strip() in opciones:
  50.                 break
  51.             else:
  52.                 print("Opción incorrecta...")
  53.         valor_compu = random.choice(opciones)
  54.         print(f"La compu eligió {valor_compu}")
  55.  
  56.  
  57.         # vemos quien gano
  58.         if valor_compu == valor_usuario:
  59.             pts_usuario = pts_usuario + 1
  60.             pts_compu = pts_compu + 1
  61.             print("Ronda empatada")
  62.              
  63.          
  64.         elif (valor_usuario == "piedra" and valor_compu == "tijera") or \
  65.             (valor_usuario == "tijera" and valor_compu == "papel") or \
  66.             (valor_usuario == "papel" and valor_compu == "piedra"):
  67.                 pts_usuario = pts_usuario + 2
  68.                 print("Ronda ganada por usuario")
  69.                
  70.         else:
  71.             pts_compu = pts_compu + 2
  72.             print("Ronda ganada por la compu")
  73.            
  74.         if ronda + 2 == rondas:
  75.             break  
  76.        
  77.         print(f"Resultado parcial: compu {pts_compu} - usuario {pts_usuario}")
  78.        
  79.         time.sleep(3)
  80.        
  81.    
  82.     # vemos quien ganó la partida:
  83.     if pts_compu > pts_usuario:
  84.         print("Partida ganada por la compu... jajajaj")
  85.         print(f"Resultado final: compu {pts_compu} - usuario {pts_usuario}")
  86.        
  87.     elif pts_compu < pts_usuario:
  88.         print("Partida ganada por el usuario... grrrr")
  89.         print(f"Resultado final: compu {pts_compu} - usuario {pts_usuario}")
  90.        
  91.     else:
  92.         print("Partida empatada... hmmmm")
  93.         print(f"Resultado final: compu {pts_compu} - usuario {pts_usuario}")
  94.        
  95.     input("Presione cualquier tecla para continuar...")    
  96.  
  97. ################################################################
  98.  
  99. titulo = "Piedra, papel o tijera: humano vs computadora"
  100.  
  101.  
  102. while True:
  103.     borrarPantalla()
  104.     print(titulo)
  105.     print(menu())
  106.    
  107.     opcion = input("Ingrese una opcion: ")
  108.    
  109.    
  110.     if opcion == "1":
  111.         rondas = ingresar()
  112.         jugar(rondas)
  113.    
  114.        
  115.     elif opcion == "2":
  116.         print("Gracias por jugar conmigo.... Hasta la próxima...")
  117.         break
  118.    
  119.        
  120.     else:
  121.         print("Opción incorrecta")
Advertisement
Add Comment
Please, Sign In to add comment