import random
import os, sys
if os.name == "posix":
var = "clear"
elif os.name == "ce" or os.name == "nt" or os.name == "dos":
var = "cls"
def ns(c):
while c!=("s") and c!=("n"): print(chr(7));c=input("Escribe solo \'n\' o \'s\' según su opción: ") return(c)
def OKI(n):
try:
n=int(n)
except:
n=OKI(input("Caracter no valido: ")) return n
def limites(n,MAX):
while n<0 or n>MAX:
n=OKI(input("ERROR: El número ha de estar entre 0 y"+str(" "+str(MAX)+": "))) return n
def sing_plu(f):
if f>1:
co=("intentos") else:
co=("intento") return co
while True:
print("ADIVINA NUMERO-SUPER DESAFIO") print("""En este juego el usuario ha de adivinar un número,escogidoal azar por la computadora, dentro de un rango determinado.""")
print("") print("""ESCOJA EL NIVEL DE DIFICULTADNIVEL 1: ENTRE 0 Y 100
NIVEL 2: ENTRE 0 Y 1000
NIVEL 3: ENTRE 0 Y 10000
NIVEL 4: ENTRE 0 Y 100000""")
level=OKI(input("Escriba aquí su opción (de 1 a 4): ")) print("") while level<1 or level>4:
level=OKI(input("Escriba un número comprendido entre 1 y 4: "))
MAX=10**(level+1)
Di=(" 0 y "+str(MAX)) numero_elegido=random.randint(0,MAX)
intentos=0
tu_numero=limites(OKI(input("Escribe un número comprendido entre"+Di+": ")),MAX) diferencia=abs(tu_numero-numero_elegido)
num_anterior=tu_numero
intentos+=1
repes=1
while tu_numero!=numero_elegido:
tu_numero=(limites(OKI(input("Escribe un número comprendido entre"+Di+": ")),MAX)) if abs(tu_numero-numero_elegido)>0:
if tu_numero!=num_anterior:
if (abs(tu_numero-numero_elegido))<diferencia:
print("TE ESTAS ACERCANDO") else:
print("TE ESTAS ALEJANDO") repes=1
else:
repes+=1
print("HAS INTRODUCIDO EL MISMO NÚMERO",repes,"VECES SEGUIDAS")
diferencia=abs(tu_numero-numero_elegido)
num_anterior=tu_numero
intentos+=1
if intentos==(MAX/2):
print(("PERDISTE: Superaste el límite de intentos permitido para este nivel("+str(int((MAX/2)))+" intentos)."),(chr(7))) print("La solución era",numero_elegido) break
if tu_numero==numero_elegido:
print("¡BINGO!") print("Lo lograste en",intentos,sing_plu(intentos))
conti=ns(input("¿Jugar otra vez?(n/s): ")) if conti==("n"): break
os.system(var)
Comentarios sobre la versión: 1.0 (0)
No hay comentarios