Foros del Web » Programando para Internet » Python »

URGENTE!!! Duda con numeros pequenos

Estas en el tema de URGENTE!!! Duda con numeros pequenos en el foro de Python en Foros del Web. hola colegas, estoy programando en python y necesito calcular probabilidades y cosas asi, asi que en ocasiones tengo que trabajar con numeros muy pequenos flotantes ...
  #1 (permalink)  
Antiguo 11/07/2010, 16:14
 
Fecha de Ingreso: noviembre-2005
Mensajes: 3
Antigüedad: 19 años
Puntos: 0
URGENTE!!! Duda con numeros pequenos

hola colegas,

estoy programando en python y necesito calcular probabilidades y cosas asi,
asi que en ocasiones tengo que trabajar con numeros muy pequenos flotantes
y hago cosas como esta,
p = 1/469

ese numero me da 0 segun python,
y segun la calculadora de windows no, por supuesto que no da 0,
como puedo lograr que ese valor coja el real valor que tiene...
algo asi como 0,...0algo...

saludos y gracias por adelantado...

denny...
  #2 (permalink)  
Antiguo 11/07/2010, 20:53
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: URGENTE!!! Duda con numeros pequenos

Bienvenido al foro dennitorf

El denominador debe ser flotante.

Ejemplo
Código Python:
Ver original
  1. p = 1 / 469.0
  #3 (permalink)  
Antiguo 12/07/2010, 00:07
AxL456
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: URGENTE!!! Duda con numeros pequenos

aunque razpeita ya te ha contestado perfectamente, paso a decirte que puede hacerse de varias maneras:
Código Python:
Ver original
  1. >>> float(1)/469
  2. 0.0021321961620469083
  3. >>> 1.0/469
  4. 0.0021321961620469083
  5. >>> 1/469.0
  6. 0.0021321961620469083
  7. >>> 1/float(469)
  8. 0.0021321961620469083
  9. >>> 1.0/469.0
  10. 0.0021321961620469083

la logica esta en que al realizar operaciones en las cuales al menos uno de los valores es un punto flotante el resultado va a ser un punto flotante.
  #4 (permalink)  
Antiguo 12/07/2010, 11:45
 
Fecha de Ingreso: noviembre-2005
Mensajes: 3
Antigüedad: 19 años
Puntos: 0
Respuesta: URGENTE!!! Duda con numeros pequenos

gracias hermanos...
ya funciono...
  #5 (permalink)  
Antiguo 12/07/2010, 13:12
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: URGENTE!!! Duda con numeros pequenos

/ es el operador "división entera" en python < 3
En Python 3, devuelve un número flotante. (y el operador de división entera pasa a ser // )

Para poder usar división flotante en python < 3 sin tener que agregar un punto o convertir a float(), se puede "importar" el comportamiento de python 3:

Código Python:
Ver original
  1. >>> from __future__ import division
  2. >>> 1/10
  3. 0.10000000000000001

http://www.python.org/dev/peps/pep-0238/


saludos.

Etiquetas: numeros
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 16:08.