Notación científica

Started by HaCkZJuaNN, November 22, 2008, 12:48:05 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

HaCkZJuaNN

He de reconocer que nunca lo he visto en ningún lenguaje de programación, pero ya que te he visto generoso con los que nos gustan las matemáticas con el tema de los floats infinitos y tal, no estaría nada mal que hubiera un tipo de variable que fueran números en notación científica con los que se pudieran hacer operaciones, de tal manera que no tuvieran límite de valor sino de precisión. En realidad se trataría de un float que fuera el valor(1 cifra entera y el resto decimales), y un int que fuera el orden de magnitud(x10^lo que sea), para luego poder hacer todo tipo de operaciones con este tipo de variables.

Yo he hecho esto alguna vez en programas míos, pero el problema fundamental que tenía era que no podía utilizar el signo "+", "-", etc sino que tenía que decir r = sumar(var1, var2), y claro, para operaciones algo más largas era un follón y bastante incómodo; por eso creo que estaría bien que estuviera incluído, o que hubiera un módulo con ello.

Un saludo.

SplinterGU

quizas te referis a esto:

Scientific Notation

It is possible to express numbers in scientific notation, which is handy if the numbers get very large or small.

In C, scientific notation is of the form xey - you should replace x and y with numbers (y must be an integer).

Basically, xey translates to "x times 10 to the power of y".

For example, 1.2e3 is 1.2*1000 = 1200
1.23e4 is 1.23*10000 = 12300
4.5e-2 is 4.5*0.01 = 0.045

obtenido de aca... http://irc.essex.ac.uk/www.iota-six.co.uk/c/b3_float_double_and_sizeof.asp

Bennu, por ahora no soporta eso.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

HaCkZJuaNN

Exactamente, no sabía que existía en C. De todas formas, no sé si en C es así, a lo que yo me refiero es que el número puede ser enorme o infinítamente pequeño, sin límite de cantidad ni de precisión en cuanto a pequeño, sino que simplemente tenga límite de precisión en función del tamaño, es decir, que siempre tenga precisión de por ejemplo 10 cifras, si es muy grande pues esas 10 cifras serán muy grandes y si es muy pequeño esas cifras serán pequeñas.

Pero vamos, que básicamente sí que es eso. En algunas cosas es realmente útil, porque a veces valores muy pequeños se te vuelven 0 y eso trastoca las cosas, y valores muy grandes dan la vuelta y ya no te digo lo que ocurre con eso...

SplinterGU

Solo puedo decir que Bennu no soportara nada que no este soportado en C con respecto a los flotantes, asi que si necesitas algo que este en C y no este en Bennu, podes sugerir la incorporacion... tampoco se soportara doubles, como tampoco enteros de 64bits... por lo menos no en la rama 1.x de Bennu...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2