![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#21
|
||||
|
||||
Cita:
![]() Choca los 5 amigo, yo empecé a meterme más en esto de los números, el redondeo, cálculo y demás hace unos meses tras recibir unos Horrores de números ![]() ![]() Saludos, |
#22
|
||||
|
||||
Se que el tema esta ya tocado, pero quisiera reincidir en el ejemplo del amigo rrf, pero a solo 2 digitos, aca todos empiezan a nombrar y decir que no se aplica a la realidad, pero quisiera poner el siguiente ejemplo:
Un supermercado que gira facturas al dia en un promedio de 15000 facturas tan solo en uno de sus locales, donde calculos de total: 1.33333333 segun ustedes deberia ser redondeado a 1.33 donde claramente hay una perdida de 0.00333333 centavos para la empresa diario de 50 centavos, 1500 mensual, 18000 anual, tan solo de una sede; lleven el caso para un banco donde las transacciones son aun mayores. No creo que se deba decir tan alegremente y confiadamente que algo no se aplica a la realidad, por que la realidad mis queridos amigos es absurdamente coherente.
__________________
PhC Rulez |
#23
|
||||
|
||||
Hola, no es así, además de que ninguna empresa, y la de tu ejemplo menos, no pierden dinero, al contrario, ganarán más
![]() Primero, todo depende de la necesidad, una empresa puede querer/necesitar redondear a 2 decimales y tiene que hacerlo de esa forma. Entonces no queda más remedio que redondear. Segundo, no puedes pedirle a un cliente, en tu caso de ejemplo, que pague 0,00333333 porque no se puede, prueba a pagar tú mismo esa cantidad, lo mínimo que puedes pagar en cualquier sitio, negocio, tienda, banco, etc. es un céntimo: 0,01 Tercero, entonces en tu caso, ¿cuánto le cobras al cliente?, pues eso, 1 céntimo, y ¿qué ocurre?, pues ahora resulta que la empresa no ha perdido 0.00333333 sino que ha ganado: 0,00666666 que multiplicado por tus 15000 facturas, son 99,9999 que al año sería 1199,9988 (1200 céntimos), o sea, en 180000 facturas (15000x12) habrá ganado 12 euros/dólares/loquesea al año. Y cuarto, como dije al principio, todo depende de las necesidades que se tengan, no es lo mismo el redondeo de una factura (que va a 2 decimales), que los cálculos científicos de algún proyecto ultra preciso que se mide en micrómetros, por decir algo. Y en este caso, el usuario necesitaba redondear a 2 decimales. Aunque con la función que hemos presentado se puede redondear a los decimales que se necesite, que es de lo que se trata. Cita:
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#24
|
||||
|
||||
Y para sumar a las palabras de Casimiro el valor mínimo de una moneda y la aplicación de redondeos está fijada por ley en cada país. En el caso de Argentina por ejemplo lo mínimo es el centavo, o dicho de otra manera la céntima parte del peso: 1/100 = 0,01. ¡Aunque hace años que no veo una monedita de 1 centavo!
![]() Por tanto es imposible de cobrar diferencias menores. Y no es legal hablar de una precisión mejor que esa... ¿O es que realmente necesitas irte a las milésimas? Respecto a los casos de redondeo, en este pedacito de tierra gobernado por una reinita bastante disparatada, existe una ley de redondeo a favor del cliente (ley 26179) que indica que toda diferencia menor a los 5 centavos y que no sea posible efectuar el vuelto la diferencia (el redondeo) sea a favor del cliente. Gracias a esa ley es que los números cuadran mucho mejor ya que se resumen a montos decimales en múltiplos de cinco (la mayoría de los casos ![]() ![]() ![]() Saludos fraccionados diría Al ![]() |
#25
|
|||
|
|||
Hola...
Tratando desde hace tiempo encontrar solucion para este problema, veo que no fue solo a mi que se rompio la cebeza de como solucionarlo. Yo uso RoundTo(), pero a veces me falla. En definitiva cual es la rutina mas acertada para usar, despues de tantas explicaciones de Delphius, que quisiera que fuese mi socio por lo que sabe, y por que esta mas cerca de donde vivo, sin desmerecer a los demas. ejemplo tengo una cifra que es 45,555 y si la redondo a dos me queda 45,55. Gracias a todos por existir.... Luis Roldan Mar del Plata Argentina
__________________
Luis A.Roldan (- Mar del Plata , Argentina- Te:472-4801//+54 9 223 5062169) |
#26
|
||||
|
||||
Chaja,
Cita:
![]() Revisa este código: El código anterior en Delphi 7 sobre Windows 7 Professional x32, Permite realizar redondeos por exceso, como se muestra en la siguiente imagen: ![]() Nota : La función de redondeo del ejemplo fue tomada de : Como redondear a partir del numero 5 . Espero sea útil ![]() Nelson. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Como redondear un numero en un procedimiento en Firebird | Gaby123 | SQL | 0 | 26-02-2007 18:25:26 |
Cómo Redondear a 4 decimales un campo de tipo Numérico | vick | Conexión con bases de datos | 1 | 11-10-2005 01:04:23 |
Funcio para obtener las decimas de segundo | enzo | Varios | 2 | 13-05-2005 01:06:11 |
Mostrar un Float como un hh:mm:ss | rjsitruiz | Impresión | 2 | 04-07-2004 14:25:29 |
![]() |
|