Computación - Problema de Precisión

 
Vista:

Problema de Precisión

Publicado por Francisco Da Silva (1 intervención) el 15/05/2006 22:24:54
Buenas soy estudiante de ingeniería química y estoy programando un simulador para calcular algunos resultados de un proceso químico. He tenido problemas con la precisión con que los número son calculados, quisiera saber si alguno de ustedes podría explicarme cómo los pc manejan los decimales y más aún, cual es la carácterística que debo estudiar en un leguaje de programación para saber la precisión del mismo.

Gracias, Atentamente.

Francisco J. Da Silva.
Estudiante de Ingeniería Química de la Universidad Central de Venezuela
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema de Precisión

Publicado por Polo (1 intervención) el 16/05/2006 17:21:05
Hola amigo, a mi tambien me tocó aplicar lo mismo en simulacion computacional, lo primero que hice fue leer acerca de los tipos de variables que se utilizan los lenguajes, por ejemplo, C++, Pascal, Delphi, visual basic, entre otros, supongamos en pascal-delphi, entre los tipos de datos numéricos que maneja, tiene: Entero (corto, largo) [Integer, Word, LongInt] y para los decimales
están los de precisión simple, doble [Real, Double]

Por ejemplo la ayuda de Pascal-Delphi dice acerca de REAL lo siguiente:

A real type defines a set of numbers that can be represented with floating-point notation. The table below gives the ranges and storage formats for the fundamental real types.

Type Range Significant digits Size in bytes
Real48 2.9 x 10^–39 .. 1.7 x 10^38 11–12 6
Single 1.5 x 10^–45 .. 3.4 x 10^38 7–8 4
Double 5.0 x 10^–324 .. 1.7 x 10^308 15–16 8
Extended 3.6 x 10^–4951 .. 1.1 x 10^4932 19–20 10
Comp –2^63+1 .. 2^63 –1 19–20 8
Currency –922337203685477.5808.. 922337203685477.5807 19–20 8
The generic type Real, in its current implementation, is equivalent to Double.

Type Range Significant digits Size in bytes
Real 5.0 x 10^–324 .. 1.7 x 10^308 15–16 8

por aqui puedes ver los rangos, los digitos significativos y el
tamaño que ocupa en bytes.

Espero haberte ayudado en algo...Saludos cordiales!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema de Precisión

Publicado por Oscar (1 intervención) el 17/05/2006 15:08:18
Buen dia, algo en que se puede fijar es en el sumo cuidado de la definicion de las variables ya que por el rango de cada tipo de dato pueden ocurrir errores
ej Int variable;//el rango de este tipo de dato es de -32768 a 32767.
Luego si en este caso necesitas que el valor sea más preciso no lo definas como entero sino cono real, y dependiendo del lenguaje empleado existiran funciones (por que en Java existen) que permiten aproximar valores .

Espero que te sirva de algo...Nos vemos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema de Precisión

Publicado por Juan (2 intervenciones) el 17/05/2006 16:49:55
Hey yo soy egresado de la escuela de computacion de la ucv. Todo depende del lenguaje de programacion, pero lo que te puedo decir es que mientras mas funciones arrastres, mayor sera el error que acarrees, por ejemplo sen(ln(tan(exp(x))) elevado a la 1/2 tendra un porcentaje de error. Me gustaria que me dijeras que lenguaje usas, que tipo de funciones estas empleando y con mucho gusto te puedo ayudar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Problema de Precisión

Publicado por Ernesto Hernandez (11 intervenciones) el 01/06/2006 18:33:24
Depende del lenguaje cada lenguaje lo maneja diferente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar