Pasar los programas a Matlab y verificar resultados comparándolos con los obtenidos en C
Enviado por Ray46Al • 28 de Febrero de 2023 • Tarea • 376 Palabras (2 Páginas) • 85 Visitas
- ¿Cuál es el resultado de ejecutar el siguiente programa en su computadora? Declare las variables como reales (punto flotante). Pasar los programas a Matlab y verificar resultados comparándolos con los obtenidos en C.
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
main( )
{
float x,h,y; //Cuatro bytes.
int i;
x=0.0;
h=0.1;
for(i=1;i<=10;i++)
x=x+h;
y=1.0-x;
printf("\n el resultado es:%e %e\n\n",x,y);
getchar();
}
Código en MATLAB:[pic 1]
- Mostrando que el resultado es:1.000000e+00 1.110223e-16
Para la verificación por Código en C:[pic 2]
- Mostrando que el resultado es:1.000000e+00 -1.192093e-07
Se puede mostrar que el valor de 0.1 (siendo h), por ser flotante se muestra un cierto error muy pequeño, sin embargo, al hacer la suma dicho error se acumula lo que nos lleva a obtener como resultado un numero un poquito más grande que 1.
Así que cuando restamos esa cantidad obtenida al valor de 1 pues el resultado da una cifra negativa muy pequeña y un tanto cercana a cero, pero diferente de él.
Esto sucede porque al tomar números tan grandes pues existe un error que va aumentando y en el resultado y puede desprenderse de ciertas cantidades que van variando de lo esperado e incluso que a la larga pueden ser un tanto perjudiciales.
- ¿El número decimal 0.1 es representado exactamente en su computadora?, o qué número es representado.
Se pudo observar que al correr el programa no se representa el numero 0.1 ya que esto va dependiendo a la computadora junto el tipo de variable que se use y como la puedas nombrar. Pero entre el entero y entero largo obviamente no se puede representar, el flotante y doble flotante con cinco ceros a su derecha.
- Del problema (1) y (2) qué conclusiones tiene.
La conclusión que obtengo es que forme a los resultados obtenidos, al ejecutar los programas tanto en C como en Matlab y sus diferentes precisiones al declarar las variables como flotante se obtuvo un resultado positivos y también muy pequeño.
Por lo tanto pues este resultado es muy cercano a cero pero por parte de abajo es aún mucho más cerca que cuando lo vas obtenido con valores flotantes. Y esto se debe a que la computadora puede trabajar con más bits que en flotante, entonces el error que acarrea es mucho más pequeño y se pueden obtener resultados más precisos.
...