Buenas estoy intentando hacer un programa para calcular el binomio de newton, es decir que muestre el desarrollo completo, lo hice en Batch, pero solo me servía para números. Quiero hacerlo también para letras, y en python creo que se puede, pero estaba empezando y tuve un problema, al imprimir variables y texto a la vez da error.
print "Binomio de Newton"
a = raw_input("Primer número: ")
b = raw_input("Segundo número: ")
pot = raw_input("Potencia: ")
print "(" a "+" b "^"pot")"
raw_input()
quiero que salga, si "a" es 5 y "b" es 6 y potencia 5 :
(5+6)^5
Y he probado muchas cosas y no funciona, combinando comillas y etc...
Saludos.
Prueba con:
print str((a + b) ^c)
Lo anterior no va a funcionar, porque suma los números, y convierte el resultado en texto :P
print("Binomio de Newton")
a = input("Primer número: ")
b = input("Segundo número: ")
pot = input("Potencia: ")
print("("+str(a)+"+"+str(b)+")"+"^"+str(pot))
input()
No se que versión de python tengas, pero desde la última el raw_input no existe, y el print necesita paréntesis obligatorio
Saludos
Es cierto, me he olvidado, es necesario si mal no recuerdo importar math.pow, en linux utilizo 2.6 en windows la 3.1, y es cierto en la última es necesario el uso de paréntesis para print.
Cita de: Novlucker en 20 Noviembre 2009, 19:59 PM
Lo anterior no va a funcionar, porque suma los números, y convierte el resultado en texto :P
print("Binomio de Newton")
a = input("Primer número: ")
b = input("Segundo número: ")
pot = input("Potencia: ")
print("("+str(a)+"+"+str(b)+")"+"^"+str(pot))
input()
No se que versión de python tengas, pero desde la última el raw_input no existe, y el print necesita paréntesis obligatorio
Saludos
Tengo la 2.6 cual me recomiendas.
Si tienes la 2.6 entonces prueba el script con los raw_input .. ¿O ya lo has probado y te ha funcionado?
Sobre que versión .. como todo, se supone que se intenta mejorar al sacar nuevas versiones, así que la última. Pero para la 2.6 hay más documentación no oficial y scripts de ejemplo, para la última no hay tanto teniendo en cuenta de que ya lleva algo así como un año , pero igual no hay que asustarse ya que el cambio no es tanto (sigue siendo python XD), solo algunas funciones, objetos y módulos, para los cuales se puede recurrir a la documentación oficial :P
Saludos
Buenas,
Como puedo agregar un sleep para que pueda leer el programa y no lo ejecute tan rápido ¿?, es que he probado con raw_input() al final, pero no sirve.
Y una cosa más, para ver los comandos y su sintaxis, puedo verlos desde el intérprete ¿?
Saludos.
EDIT: Según leí en un libro, no hace falta declarar la variable al hacerla, por ejemplo para los números si es entero complejo o real, pero he probado a poner una "x" y da error.
Para agregar un sleep
import time
time.sleep(5)
print('test')
CitarY una cosa más, para ver los comandos y su sintaxis, puedo verlos desde el intérprete ¿?
Estas en win? tienes la ayuda en un html compilado dentro de la carpeta
Doc, desde la cual puedes ingresar con F1 desde la GUI de Python
CitarEDIT: Según leí en un libro, no hace falta declarar la variable al hacerla, por ejemplo para los números si es entero complejo o real, pero he probado a poner una "x" y da error.
No, en Python no hay que declarar los tipos, pero no he entendido lo de la "X" :-X
Saludos
CitarSegún leí en un libro, no hace falta declarar la variable al hacerla, por ejemplo para los números si es entero complejo o real, pero he probado a poner una "x" y da error.
No, efectivamente no hace falta declarar que tipo de datos soporta una variable en este lenguaje, pero si hace falta saber que tipo de datos soportan como parametros ciertas funciones internas de ciertos modulos.
En python hay 2 funciones para recibir datos
* raw_input
* input
raw_input colecciona cualquier dato insertado por teclado por parte del usuario y lo convierte en caracteres. Sin embargo en el caso de input colecciona los datos insertados por teclado y los convierte a numeros, otra falla de input es que no solo convierte todo lo recibido a numero o lo trate como un numero sino que tambien asume lo insertado como codigo python he intentara ejecutarlo... por ende te recomendaria usar raw_input en lugar del debil input.
Si tu inconveniente es que no quieres que raw_input convierta numeros insertados por teclado en caracteres, no hay problema alguno filtra la entrada especificando que meramente debe recibir solo numeros asi:
try:
numero=int(raw_input("Inserta un numero "))
except Exception:
print "Debes insertar un Numero!!"
else:
print ("Mi suma con 10 es ", numero+10)
Concuerdo con todo :P
Solo que por si acaso, recuerdo que el raw_input no funciona en la versión 3 de python, pero bueno, CaronteGold esta usando la 2.6, y ahí si sirve
D:\Python31>python.exe "D:\elinput.py"
Traceback (most recent call last):
File "D:\elinput.py", line 1, in <module>
Texto=raw_input("Inserta un numero ")
NameError: name 'raw_input' is not defined
Saludos
Yo tengo la 2.6.2 :) deberia probar la 3 haber como va.
Tengo una duda, python puede operar con incógnitas ¿?, es decir por ejemplo calcular:
x+3y+2x*3
Es que igual lo hago mal, o no se puede :S.
Saludos y gracias.
Se me olvidaba, para poner en una variable que por ejemplo, variable = a**5
es decir que variable es a elevado a la quinta, da este error : TypeError: unsupported operand type(s) for ** or pow(): 'str' and 'int'
Me temo que las incognitas debes de resolverlas tu ;D ... lo que ocurre es que estas confundiendo el cálculo de incognitas con los números complejos, los cuales en python se representan con un número seguido de j :P
:http://programacionpython.wordpress.com/2008/07/16/dia-13-numeros-complejos-en-python/
Saludos
Entonces, no hay manera de hacer cálculos con incógnitas ¿?....
Eso me impide hacer lo que tenía en mente :-(
Saludos.
Te lo impide o te lo dificulta? ;)
Saludos
Impide, por que si el que vaya a usar el programa ( quiero hacer un calculador del binomio de newton, con incógnitas, ya que con números ya lo hice en batch ) si quiere calcular, (2x+3x)5
Pues me lo impide, ya que no puedo hacer cálculos con la letra.
Saludos.
Dificulta, el problema es que esperas que hayan funciones que hagan todo por ti, si esas fórmulas se pueden resolver manualmente, que te impide automatizarlo? :D
Es ahí donde esta el mérito del programador ;)
Saludos