Ver Mensaje Individual
  #21 (permalink)  
Antiguo 07/09/2015, 21:39
Tachikomaia
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con decimales.

Cita:
Iniciado por agleiva Ver Mensaje
NO.

La verdad que me parece la peor idea que se te puede ocurrir.

Si tenés que realizar operaciones con números decimales usás un tipo numérico decimal. Usar punto flotante trae los problemas de redondeo (de los que ya hablamos), y hacer lo que vos planteás es innecesario, tedioso, poco práctico y muy propenso a errores, así que cuando queres manejar valores exactos usás decimal.
No he entendido, el problema que tengo con esa alternativa es que no sabría qué números debo aumentar y cuales no, no es un tema de que el código falle porque AS o las CPU fallen al contar.

Te doy un ejemplo. Digamos que tengo que hallar un número del 1 al 5 y sé que tiene hasta 2 decimales, o sea que puede ser 1 o 2.93, etc. Supongamos que ese número es la mínima defensa necesaria para que un personaje de videojuego sobreviva a un ataque -generalmente los valores son enteros, pero supongamos que no en este caso-. Si multiplico "todo" *100 entonces la búsqueda sería de un número entero, ya no decimal. Sería del 100 al 500, luego de hallarlo lo traduciría a decimal -aunque sea manualmente, es decir yo, no el programa-. Lo bueno de esto es que se puede analizar el problema sin usar decimales. El problema es que no siempre es claro qué cosas deben ser multiplicadas ni si realmente todos los casos se puede aplicar eso y funcionar bien.

Cita:
A ver si te queda claro: ESA BASURA DE ACTIONSCRIPT NO SIRVE PARA NADA.
Me sirve y lo sabes, lo que no me sirve es discutir si me sirve o no, y también lo sabes.

Cita:
No podés resolver un problema de decimales en una plataforma que no tiene una implementación de un tipo decimal adecuado. Lo más que podés hacer es redondear a una cierta precisión como te mostré arriba.
Bien, con las condiciones que plantee llegás hasta esa solución, no tenés más alternativas, ok, gracias por tu ayuda, hasta otra.

Cita:
Tu ego es demasiado grande me parece....
Igual que tu viga en el ojo.
"Ves la paja en el ojo ajeno pero no la viga en el propio".

Además ¿qué tiene que ver mi ego con querer resolver un problema con unas herremientras X? ¿qué? ¿soy muy engreído por usar herramientas limitadas? No entiendo, uso la herramienta esa porque me gusta o me resulta más cómodo, aunque vos no lo creas, pero ese es tu problema, es como que yo te diga a vos qué música escuchar. es un sin sentido si vos querés escuchar X. Yo igual, ya te lo dije, no voy a dejar de usar Flash, no jodas conque cambie, el tema no ese. No vengo a leer insultos a un lenguaje o a mi persona, vengo a ver soluciones, si las tenés bien sino callate o al menos mantené el respeto.

Cita:
Pero para vos esa solución no sirve? o sea que vos solito sabes más que TODOS los diseñadores de lenguajes (serios), ingenieros y programadores del MUNDO ENTERO?
No dije que no sirva, dije que no quiero usarla. Todo el mundo juega a un Wii o no sé qué carajo a estas alturas, yo sigo con Nes, Snes, Play1 y me divierto igual ¿tengo que hacer algo más actualizado o "mejor" porque la mayoría lo haga? No señor. Acéptalo.

Cita:
Por ejemplo tratar de crear tipos inmutables y funciones puras que no tengan efectos secundarios.
¿Qué problema podría haber en hacerlo distinto? ¿efecto secundario como cual?

Cita:
(*) por cierto yo estoy aprendiendo F# y FP en este tiempo, lo cuál representa un cambio de paradigma ENORME con respecto a lo que vine haciendo durante ya casi 10 años de manera profesional (OOP), y vos no queres salir de tu "cajita" de ActionScript. Fijate....
Bien por ti! Si con tus super conocimientos y capacidad y experiencia y versatilidad y todo lo que sea mejoras al mundo bien, pero yo voy a seguir con Flash o lo que me parezca cómodo, es mi problema ¿no lo entiendes? ¿qué vas a hacer, apuntarme con un arma para que use lo que vos queras? Madura. Habla de los temas y no de tus conocimientos, de los demás, de las plataformas, si no son el tema.

...

Ahora supongo que Malenko va a cerrar el hilo, y como si fuese mi culpa, porque me enojé, pero ¿por qué tenías que empezar a hablar de mi plataforma o de mí? Si el tema es otro. Además contigo es siempre lo mismo, sabés que no voy a cambiar de plataforma, en principio te hablé porque respondiste bien a pesar de las cositas innecesarias, pero qué qjuieres??? Pregunté cómo solucionar un problema que ocurre en varias plataformas, solucionarlo usando herramientas básicas no otras especatulares como "m" u otra plataforma ¿y por eso te enojás, te sacás, empezás a insultar la plataforma que uso y a hablar de mi ego? Mira, en un foro una persona abre un tema y pone las reglas, más o menos, "quiero esto", "busco aquello", si piden pan y no quieres dar pan no des, pero no des garrotazos en la cabeza tampoco, no respondas, te agradezco la solución que me diste, estuvo bien, pero el resto no, si el tema no te gusta no lo respondas o tené respeto, no sé, por más razón que tengas no me interesa cambiar de plataforma ¿te gustaría que alguien te diga a cada rato que la música clásica es mejor que el metal, por ejemplo? Si escuchás metal. Creo que un tal Mario Bunge dice que esa música es para alienados o que sólo se puede escuchar drogado. Yo escucho bastantes cosas, por las dudas, no estoy insultando al meta, te digo lo que me pareció que dice otro y que no te gustaría que te digan a cada rato.
¿Te gustaría que te digan a cada rato que te hagas católico, que te afeites, que te cortes el pelo, que te vistas de traje (o de algo que no te guste), etc, etc? No. Bueno, a mí tampoco me gusta toparme con insultos a Flash o a mi persona que no vienen al caso.
Ya dije que iba a ignorarte, te di oportunidades pero parece que no podés evitar que te salga mierda por la boca. Por tiempos, me fui del foro por cosas que has dicho. Si quieres insultar a Flash o AS o lo que sea deberías abrir temas, "Flash es una mierda", y puteá ahí todo lo que quieras, create un blog para insultar a AS si quieres xP Pero no me jodas a mí conque cambie o en mis temas con cosas que no vienen al caso. Si pregunto cómo hacer KO con karate no me vengas conque el karate es una mierda y que use metralletas. En definitiva yo no tengo rabia contra ti ni nada, pero logras sacarme de qusio y no entiendo, o sea, si no te gusta estar lmitado a usar lo básico ¿entonces para qué respondés mis temas que sabés que son de eso? O bueno, ta, se te escapó, o no sabías, pero lo de putear a Flash o a mí sobraba. ¿Siempre que hable contigo va a ser así? ENTENDELO: NO VOY A DEJAR DE USAR FLASH, al menos no porque vos me lo digas o porque me lo digan puteando al programa, si dejo de usarlo será porque yo mismo me harte de sus límites o me aburra de ciertas cosas de él. NO ESTÁ BIEN QUE QUIERAS OBLIGARME O QUE ME REPITAS A CADA RATO QUE ES UNA MIERDA Y QUE LO DEJE. Como si usar Flash fuese un delito o algo por el estilo, por favor. Así que, no respondas mis temas si es para putearme o a Flash/AS.
Si querés putear a Flash/AS, abre tu un tema, o create un blog, haz videos de youtube o lo que sea. Virus no, please. ¿No hay algún político malvado en tu país o algo por el estilo a quien debas putear y a su política más de lo que me puteas a mí y a Flash? Bueno, ve a por él, dejame tranquilo.