Programas > Ejemplo: comparación booleana estricta
  
Ejemplo: comparación booleana estricta
Defina la opción Igualdad aproximada para controlar el nivel de aproximación usado en comparaciones booleanas y en funciones de truncamiento.
1. Defina una función.
Pulse aquí para copiar esta expresión
2. Escriba un programa que implemente Newton's Method y lo compare con el resultado de la función integrada root.
* 
La función root depende de TOL, pero no responde a un TOL que sea mayor que 10-5.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
* 
Asegúrese de que TOL tenga el rótulo Sistema.
Pulse aquí para copiar esta expresión
3. Asegúrese de que ninguna de las opciones de cálculo de la ficha Cálculo, del grupo Configuración de la hoja de trabajo, de la sección Opciones de cálculo esté seleccionada y, a continuación, llame a Newt y pásele el nombre de la función, un valor de prueba y el número máximo de iteraciones.
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Si se utiliza el valor por defecto de TOL (TOL:=TOL1), Newt puede realizar 50 iteraciones y ejecutarlas hasta alcanzar el mejor resultado aproximado bajo una evaluación estricta.
* 
Cuando se desactiva la opción Igualdad aproximada, los números entre –10-307 y +10-307 se consideran 0, y las comparaciones se evalúan de manera estricta, utilizando los propios números hasta su representación de precisión de coma flotante doble.
4. Vaya al paso 2 y defina TOL en TOL2. Newt llega a los resultados exactos en 29 iteraciones.
5. Vaya al paso 2 y defina TOL de nuevo en TOL1.
6. En la ficha Cálculo, en el grupo Configuración de la hoja de trabajo, pulse en Opciones de cálculo y seleccione Igualdad aproximada.
El valor que devuelve Newton's Method cambia de -0.152137970680457 a -0.152137970680580, y se alcanza en 19 iteraciones.
* 
Si la opción Igualdad aproximada está activada, el valor absoluto de la diferencia entre dos números dividido por su media debe ser inferior a 10-12 para que se consideren iguales.
7. Compruebe que los valores devueltos superan la prueba de igualdad:
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
8. Vaya al paso 2 y defina TOL en TOL2. El valor que devuelve root cambia de -0.152137970680456 a -0.152137970680457, y se alcanza en 19 iteraciones.
9. Compruebe que los valores devueltos superan la prueba de igualdad:
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión
Pulse aquí para copiar esta expresión