• Sábado 15 de Junio de 2024, 18:16

Autor Tema:  Que tengo mal en este script  (Leído 1939 veces)

evil_reindeer

  • Nuevo Miembro
  • *
  • Mensajes: 5
  • Nacionalidad: mx
    • Ver Perfil
Que tengo mal en este script
« en: Miércoles 19 de Agosto de 2009, 22:45 »
0
Hola a todos, soy nuevo en el foro, y les cuento que recien estoy aprendiendo Python, me puse a hacer un script que calcule el area de un cuadrado, pero no me lo ejecuta, solo se abre la consola de comandos pero se cierra inmediatamente, lo curioso es que si en el interprete lo escribo linea por linea, si lo ejecuta sin problemas, solo falla cuando lo guardo en .py y luego lo ejecuto.
Les dejo el source hecho en Python 3.0


Código: Python
  1. def comprobar_area(lado):
  2.     area=lado**2
  3.     print("El area del cuadrado es",+area)
  4.  
  5. def comprobar_lado(lado):
  6.     if lado == 0:
  7.         print("El lado no puede ser cero")
  8.     elif lado <0:
  9.         print("El lado no puede ser negativo")
  10.     else:
  11.         comprobar_area(lado)
  12.  
  13.  
  14. side= int(input("¿Cual es el lado del cuadrado"))
  15. comprobar_lado(side)
  16.  
  17.  

Saludos y gracias

RadicalEd

  • Moderador
  • ******
  • Mensajes: 2430
  • Nacionalidad: co
    • Ver Perfil
Re: Que tengo mal en este script
« Respuesta #1 en: Miércoles 19 de Agosto de 2009, 22:57 »
0
coloca al final raw_input() para que lo puedas finalizar con un enter, si quieres también puedes usar el módulo sleep
El pasado son solo recuerdos, el futuro son solo sueños

evil_reindeer

  • Nuevo Miembro
  • *
  • Mensajes: 5
  • Nacionalidad: mx
    • Ver Perfil
Re: Que tengo mal en este script
« Respuesta #2 en: Jueves 20 de Agosto de 2009, 00:00 »
0
Cita de: "Edo"
coloca al final raw_input() para que lo puedas finalizar con un enter, si quieres también puedes usar el módulo sleep
No se puede, como estoy usando Python 3.0, raw_input() dejo de existir, ademas el programa deberia pausarse en la sentencia
Código: Python
  1. side= int(input("¿Cual es el lado del cuadrado?"))
  2.  

RadicalEd

  • Moderador
  • ******
  • Mensajes: 2430
  • Nacionalidad: co
    • Ver Perfil
Re: Que tengo mal en este script
« Respuesta #3 en: Jueves 20 de Agosto de 2009, 01:19 »
0
Sorry, no había leído la parte de que lo habías hecho en Python 3.0, para eso puedes usar solamente el input(), y así te mola.
El pasado son solo recuerdos, el futuro son solo sueños

evil_reindeer

  • Nuevo Miembro
  • *
  • Mensajes: 5
  • Nacionalidad: mx
    • Ver Perfil
Re: Que tengo mal en este script
« Respuesta #4 en: Jueves 20 de Agosto de 2009, 01:49 »
0
Cita de: "Edo"
Sorry, no había leído la parte de que lo habías hecho en Python 3.0, para eso puedes usar solamente el input(), y así te mola.

Si tengo el input() en el codigo, aun asi se abre y se cierra, creo que es por un error, ya le agregue el input() aparte del que ya tiene, pero nada. :(

evil_reindeer

  • Nuevo Miembro
  • *
  • Mensajes: 5
  • Nacionalidad: mx
    • Ver Perfil
Re: Que tengo mal en este script
« Respuesta #5 en: Jueves 20 de Agosto de 2009, 02:51 »
0
Ya enconte el error resulta que en la sentencia
Código: Python
  1. side=int(input("¿Cual es el lado del cuadrado"))
  2.  
Me falto declarar la variable side como un entero, asi que solo tenia que agregar n, de modo que quedo asi:
Código: Python
  1. side=int(input)"¿Cual es el lado del cuadrado?"n))
  2.  
Y listo! problema resuelto
saludos a todos.

RadicalEd

  • Moderador
  • ******
  • Mensajes: 2430
  • Nacionalidad: co
    • Ver Perfil
Re: Que tengo mal en este script
« Respuesta #6 en: Jueves 20 de Agosto de 2009, 04:59 »
0
Realmente no entendí :S , que tiene que ver con tú pregunta original???
El pasado son solo recuerdos, el futuro son solo sueños

evil_reindeer

  • Nuevo Miembro
  • *
  • Mensajes: 5
  • Nacionalidad: mx
    • Ver Perfil
Re: Que tengo mal en este script
« Respuesta #7 en: Jueves 20 de Agosto de 2009, 16:53 »
0
Citar
Realmente no entendí :S , que tiene que ver con tú pregunta original???

Pues que el programa no se ejecutaba, y no era por que le faltaba un input() por que ya tenia uno, quiere decir que una sentencia mal escrita era la que no permitia la ejecucion, y resulta que la sentencia mal escrita era la que puse arriba.
Una vez corregida el programa ya se ejecuto y pauso sin problemas. :D
Saludos!