Calculating accuracy of decimal places and print out the values

10 visualizaciones (últimos 30 días)
How to find the accuracy of decimal places between the integral approximation and the MATLAB built-in integral function? Eg: if my approximation is 0.50000000 and the true value is 0.52359878, and error is 0. 0 2359878, there is one 0 in front of the error value, '0.0', so the Decimal place will be 1, and when approximation is 0.51666667, error will be 0. 00 693211, there is two 0 , so decimal place will be 2.
Also, how do i only print the approximation and the error values when the decimal place has increased by 1?

Respuesta aceptada

Ameer Hamza
Ameer Hamza el 6 de Mayo de 2018
Editada: Ameer Hamza el 6 de Mayo de 2018
You can use the following formula to calculate the number of zeros after decimal position and first non-zero digit
floor(-log10(error))
To only print when accuracy is increased do the following
bestAccuracy = 0;
while bestAccuracy < 10
integralValue = % calculate your integral here
error = % calculate yor error here
accuracy = floor(-log10(error));
if accuracy > bestAccuracy
bestAccuracy = accuracy;
disp(error);
end
end
This loop will run till best accuracy will become 10.
  4 comentarios
Ameer Hamza
Ameer Hamza el 6 de Mayo de 2018
Yes. If you want to have 8 zeros after decimal points, then use bestAccuracy < 8.

Iniciar sesión para comentar.

Más respuestas (1)

Jaidyn Lai
Jaidyn Lai el 10 de Mayo de 2018
ENG1060 assignment I see

Categorías

Más información sobre Mathematics en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by