Diferencia entre revisiones de «Tipo de dato real»
Sin resumen de edición |
m Revertidos los cambios de 200.36.49.230 a la última edición de Jesuja |
||
Línea 32: | Línea 32: | ||
* [[División (matemática)|División]] |
* [[División (matemática)|División]] |
||
El desbordamiento (''overflow'') |
== El desbordamiento (''overflow'') == |
||
Cuando operando con número reales en un programa de ordenador ocurre que se intenta asignar a una variable un valor que está fuera del rango de los valores que se pueden representar se produce un fallo que se conoce con el nombre de [[desbordamiento]] (''overflow'' en [[idioma inglés|inglés]]). Cuando esto ocurre lo habitual es que el programa siga funcionando como si nada hubiera pasado, pero el valor desbordado se habrá convertido en un valor indeterminado con lo que las operaciones posteriores en las que este valor intervenga producirán resultados incorrectos. |
Cuando operando con número reales en un programa de ordenador ocurre que se intenta asignar a una variable un valor que está fuera del rango de los valores que se pueden representar se produce un fallo que se conoce con el nombre de [[desbordamiento]] (''overflow'' en [[idioma inglés|inglés]]). Cuando esto ocurre lo habitual es que el programa siga funcionando como si nada hubiera pasado, pero el valor desbordado se habrá convertido en un valor indeterminado con lo que las operaciones posteriores en las que este valor intervenga producirán resultados incorrectos. |
||
==Véase también |
==Véase también== |
||
*[[Tipo de dato]] |
*[[Tipo de dato]] |
||
*[[Tipo Ordinal]] |
*[[Tipo Ordinal]] |
Revisión del 16:58 22 ene 2010
El tipo de dato real define un conjunto de números que pueden ser representados con la notación de coma flotante.
Al igual que los números enteros, el tipo real está limitado superior e inferiormente según la cantidad de memoria que haya disponible para almacenarlo. Otro elemento importante a tener en cuenta en este tipo de datos es la precisión con que pueden representar número con decimales (cuantos decimales se pueden representar), esta característica también está directamente relacionada con la cantidad de memoria disponible para almacenar un valor real.
A modo de ejemplo, en la tabla siguiente se muestran los rangos así como los formatos de almacenamiento para los tipos reales fundamentales para un determinado lenguaje de programación.
Tipos reales fundamentales en Pascal:
Tipo Rango Dígitos Tamaño significativos en 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
Cuando la precisión que admite un valor real es rebasada el valor de este trunca o se redondea. Por ejemplo si el máximo número de dígitos decimales que puede albergar un tipo real es 10 la siguiente operación:
- a = 123,123456789 / 100
debería dar como resultado que a es igual a 1,23123456789, pero este valor tiene 11 decimales, por lo que el valor de a será uno de estos:
- Truncando: a = 1,2312345678
- Redondeando: a = 1,2312345679
Operaciones
Las típicas operaciones aritméticas:
El desbordamiento (overflow)
Cuando operando con número reales en un programa de ordenador ocurre que se intenta asignar a una variable un valor que está fuera del rango de los valores que se pueden representar se produce un fallo que se conoce con el nombre de desbordamiento (overflow en inglés). Cuando esto ocurre lo habitual es que el programa siga funcionando como si nada hubiera pasado, pero el valor desbordado se habrá convertido en un valor indeterminado con lo que las operaciones posteriores en las que este valor intervenga producirán resultados incorrectos.