Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - sayion

#1
¡¡Muchísimas Gracias!!
Menudo fallo de noob más tonto...
Cita de: Arnau27 en 30 Mayo 2012, 20:14 PM
Disfruta!
Con python es casi imposible no hacerlo =D , gracias de nuevo.
#2
Muchas gracias, voy a probar las soluciones a ver que tal. En cuanto a lo de los espacios fue problema al copiar y pegar de aptana así que tuve que arreglarlo a mano. Lo de que sólo se pueden introducir números lo tengo solucionado con excepciones pero no lo quise poner por no alargar mucho el post ya que no tenía nada que ver por el problema, pero muchas gracias por las indicaciones =D

EDITO:
Lo he dejado así... y no sé si sigo haciendo algo mal porque me sigue dando fallos. Por ejemplo, meto 3 dados de 5, en la siguiente 4 dados de 6 y sólo me da un resultado ¿?¿? No sé si será porque me pilla en un nivel muy bajo o qué, pero no consigo entender por qué falla...
Código (python) [Seleccionar]

import random
indice = 0
contador=0
salir=0
resultados=[]
def murder():
while len(resultados)>0: #Len, cuenta los elementos de la lista
print(resultados[0])
resultados.pop(0)

while True:
dados = (input (" Numero de Dados: "))
caras = (input (" Numero de Caras: "))
dadosenteros=int(dados)
carasenteras=int(caras)

while indice < dadosenteros:
x=random.randint(1,carasenteras)    
resultados.append(x)                
indice +=1

resultados.sort()

for x in range(len(resultados)-1,-1,-1):
print (resultados[x])

salir = (input("Presiona enter para volver a lanzar o escribe s para salir-> "))


if salir == "s":
exit()
else:
murder()
continue


En cuanto a lo del include de operaciones, sinceramente no tengo ni idea de cómo hacerlo  :-[
Muchas gracias a los dos por la ayuda. A ver si conseguimos solucionarlo  ;)

PD: ¿cómo se hace para que el código quede con los colores?  EDITO2: Solucionado
#3
Hola!!
He empezado a usar python 3 hace poco y he aprendido bastante con los tutoriales y demás cosillas que he ido encontrando por aquí, pero al final me he topado con un problema que no soy capaz de resolver solo. Siguiendo los ejercicios de este post (http://foro.elhacker.net/ejercicios/juego_ejercicios_python-t278592.0.html) se me ocurrió hacer una cosa para practicar siguiendo el reto del usuario Masita, que consistía hacer un programa que tirase dados:
Código (python) [Seleccionar]

import random
indice = 0
contador=0
salir=0

while True:
   resultados=[]

   dados = (input (" Número de Dados: "))
   caras = (input (" Número de Caras: "))
   dadosenteros=int(dados)
   carasenteras=int(caras)
   
   while indice < dadosenteros:
       x=random.randint(1,carasenteras)    
       resultados.append(x)                
       indice +=1
           
   resultados.sort()

   for x in range(len(resultados)-1,-1,-1):
       print (resultados[x])

   salir = (input("Presiona enter para volver a lanzar o escribe s para salir-> "))

             
   if salir == "s":
       exit()
   else:
       del resultados
       continue
   


En principio, lo que debería hacer es generar una tirada (que funciona) y si escribes s y le das al enter el programa se cierra. Si le das al enter directamente vuelve a empezar. El problema es que la variable lista "resultados" no se borra bien porque si haces una tirada inferior en número de dados no muestra nada y si es superior enseña los dados de la anterior mas los que tira. Vamos, que soy incapaz de reiniciar el valor 0 de la lista. He probado con comandos como del, igualando la lista a None... no sé qué hacer. ¿Alguna idea? ¿Por qué pasa esto?