Foros del Web » Programación web » PHP »

Problema con una suma y multiplicacion

Estas en el tema de Problema con una suma y multiplicacion en el foro de PHP en Foros del Web. Hola , tengo un numero que quiero multiplicar y luego sumar , el tipo de datos en la tabla mysql es BIGINT , porque el ...
  #1 (permalink)  
Antiguo 01/09/2008, 17:26
 
Fecha de Ingreso: mayo-2006
Ubicación: Viña del Mar , Chile
Mensajes: 103
Antigüedad: 8 años, 6 meses
Puntos: 0
Problema con una suma y multiplicacion

Hola , tengo un numero que quiero multiplicar y luego sumar , el tipo de datos en la tabla mysql es BIGINT , porque el numero es grande , y estoy tratando de hacer esto:

$resultado = 96522145632*2008+255;

el resultado con calculadora me da:

193816468429311


Pero en PHP en resultado que me almacena en la tabla SQL es:

193816468429000

Al final pone 3 veces 000 , con cualquier resultado , que estará fallando???

Gracias.
Saludos :)

Última edición por andryus; 01/09/2008 a las 17:54
  #2 (permalink)  
Antiguo 01/09/2008, 17:41
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 6 años, 3 meses
Puntos: 103
Respuesta: Problema con una suma y multiplicacion

realiza un echo $resultado; para ver cual es el problema
  #3 (permalink)  
Antiguo 01/09/2008, 17:41
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 9 años, 2 meses
Puntos: 53
Respuesta: Problema con una suma y multiplicacion

yo creo q se esta rebalsando la capacidad del numero
__________________
Degiovanni Emilio
developtus.com
  #4 (permalink)  
Antiguo 01/09/2008, 17:41
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 12 años, 9 meses
Puntos: 43
Respuesta: Problema con una suma y multiplicacion

Cita:
$resultado = 96522145632+2008*255;

el resultado con calculadora me da:

193816468429311
Estas seguro que has realizado la operación bien
En la calculadora y en php el resultado es 96522657672

Cita:
Pero en PHP en resultado que me almacena en la tabla SQL es:

193816468429000

Al final pone 3 veces 000 , con cualquier resultado , que estará fallando???
Como insertas el dato?
__________________
"El conocimiento nos hace responsables."
twitter: @benjamingb
blog personal: http://codigolinea.com
ZF Manual en español http://manual.zfdes.com
  #5 (permalink)  
Antiguo 01/09/2008, 17:52
 
Fecha de Ingreso: mayo-2006
Ubicación: Viña del Mar , Chile
Mensajes: 103
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Problema con una suma y multiplicacion

Disculpa la operacion es asi:

En la calculadora de windows si haces la operacion da:

96522145632*2008+255 = 193816468429311

En PHP si ago eso mismo me da:

96522145632+2008*255 = 193816468429000

El tipo de dato que uso en mysql es BIGINT , porque BIGINT tiene la capacidad de almacenar registros que van desde 0 a 18.446.744.073.709.551.615.

Entonces nose que estará pasando porque no me da el mismo numero que en la calculadora???
  #6 (permalink)  
Antiguo 01/09/2008, 17:59
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 6 años, 3 meses
Puntos: 103
Respuesta: Problema con una suma y multiplicacion

hiciste el echo que te pedi?
  #7 (permalink)  
Antiguo 01/09/2008, 18:03
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 12 años, 9 meses
Puntos: 43
Respuesta: Problema con una suma y multiplicacion

Cuando realizas una operación matemática primero son la multiplicación y división, luego la suma y resta.

Tu estas realizando primero la suma, luego la multiplicación.

96522145632*2008+255 es procesado asi 96 522 145 632 + (2 008 * 255) = 96 522 657 672.

Por eso te pregunto si esta bien tu operación.
__________________
"El conocimiento nos hace responsables."
twitter: @benjamingb
blog personal: http://codigolinea.com
ZF Manual en español http://manual.zfdes.com
  #8 (permalink)  
Antiguo 01/09/2008, 18:09
 
Fecha de Ingreso: mayo-2006
Ubicación: Viña del Mar , Chile
Mensajes: 103
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Problema con una suma y multiplicacion

Es asi:

(96522145632*2008)+255

Al resultado de (96522145632*2008) le sumas 255

(96522145632*2008) = 193816468429056 + 255 = 193816468429311

En php si ago el echo me muestra esto:

El resultado es: 193816468429000

Codigo fuente:

Cita:
<?

$operatoria = (96522145632*2008)+255;

echo "El resultado es: $operatoria"

?>

URL para que vean:

http://infernogames.net/operatoria.php

Que sucede?? :(
  #9 (permalink)  
Antiguo 01/09/2008, 18:36
 
Fecha de Ingreso: mayo-2006
Ubicación: Viña del Mar , Chile
Mensajes: 103
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Problema con una suma y multiplicacion

Creo que algo sucede con mi php porque lo probé en otro host y me da bién el resultado el mismo que la calculadora , que puede ser? abrá que editar el php.ini o algo?? aqui esta mi phpinfo:

http://thezhost.com/phpinfo.php

No entiendo por qué hace mal la operatoria u.U
  #10 (permalink)  
Antiguo 01/09/2008, 18:41
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.932
Antigüedad: 6 años, 3 meses
Puntos: 105
Respuesta: Problema con una suma y multiplicacion

te digo que en php, ese resultado si da 193816468429311, asi que debe ser el campo de tu bd
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #11 (permalink)  
Antiguo 01/09/2008, 18:42
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 12 años, 9 meses
Puntos: 43
Respuesta: Problema con una suma y multiplicacion

Algo debe andar mal con con tus bibliotecas php o tu sistema. por que yo obtengo el resultado correcto tanto en el php como en el mysql.

Saludos!
__________________
"El conocimiento nos hace responsables."
twitter: @benjamingb
blog personal: http://codigolinea.com
ZF Manual en español http://manual.zfdes.com
  #12 (permalink)  
Antiguo 01/09/2008, 18:47
 
Fecha de Ingreso: mayo-2006
Ubicación: Viña del Mar , Chile
Mensajes: 103
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Problema con una suma y multiplicacion

Cita:
Iniciado por masterojitos Ver Mensaje
te digo que en php, ese resultado si da 193816468429311, asi que debe ser el campo de tu bd

Aqui te estoy mostrando el codigo directamente sin almacenamiento en BD:

http://infernogames.net/operatoria.php


Código PHP:
<?

$operatoria 
= (96522145632*2008)+255;

echo 
"El resultado es: $operatoria"

?>
Que extraño nose que podra ser :S

Bueno gracias por la ayuda.
Saludos

Última edición por andryus; 01/09/2008 a las 18:57
  #13 (permalink)  
Antiguo 01/09/2008, 19:00
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.932
Antigüedad: 6 años, 3 meses
Puntos: 105
Respuesta: Problema con una suma y multiplicacion

ya man aca acaba el tema....... haslo asi ok:
Código PHP:
<?php
$operatoria 
= (96522145632*2008)+255;
$operatoria=number_format($operatoria,0,"0","");
echo 
"El resultado es: ".$operatoria;
?>
se que te sirvira.... mi firma ps jeje
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #14 (permalink)  
Antiguo 01/09/2008, 19:19
 
Fecha de Ingreso: mayo-2006
Ubicación: Viña del Mar , Chile
Mensajes: 103
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Problema con una suma y multiplicacion

uhhh , con ese codigo si me funciona :D , me podrias explicar que es lo que hace esa funcion number_format ?? porque ahora si me da igual que la calculadora :D:D

Gracias de verdad.
Saludos :D
  #15 (permalink)  
Antiguo 01/09/2008, 19:23
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 12 años, 9 meses
Puntos: 43
Respuesta: Problema con una suma y multiplicacion

Aquí tienes una buena explicación
http://www.php.net/manual/es/function.number-format.php
__________________
"El conocimiento nos hace responsables."
twitter: @benjamingb
blog personal: http://codigolinea.com
ZF Manual en español http://manual.zfdes.com
  #16 (permalink)  
Antiguo 01/09/2008, 19:25
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.932
Antigüedad: 6 años, 3 meses
Puntos: 105
Respuesta: Problema con una suma y multiplicacion

ya ps te formatea una expresion a tipo numero, es decir algo asi:
number_format($expresion,$cantidad_de_decimales,"$ constante_separadadora","$separador_de_miles");
y eso es todo.... mejor informate aqui si deseas.....
no olvides pincharle a mi jin yang ps men.... jaja gracias.....cdt.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #17 (permalink)  
Antiguo 01/09/2008, 20:44
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.534
Antigüedad: 8 años, 5 meses
Puntos: 2109
Respuesta: Problema con una suma y multiplicacion

El problema más que nada es que cuando haces operaciones con números así de grandes, necesitas usar la biblioteca bc_math de PHP.

Saludos.
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 05:30.
SEO by vBSEO 3.3.2