How to adjust the decimal place in fprintf statement

54 visualizaciones (últimos 30 días)
Katherine
Katherine el 28 de Oct. de 2024 a las 21:03
Comentada: Les Beckham el 31 de Oct. de 2024 a las 14:44
printf('The maximum force, F(m), on the piling is %1.2f N.\n',Fm);
The value is Fm = 29801.98 N and with this format shown above I only can adjust the number of decimal places it displays.
I am trying to move the decimal 3 places to the left so that it reads out the answer as 29.80 kN. Others answers in my code require different output formats so I need to be able to adjust each in the statement if possible.

Respuesta aceptada

Les Beckham
Les Beckham el 28 de Oct. de 2024 a las 21:30
Note that the Matlab function for printing to the command window is fprintf, not printf. Note also that it doesn't make sense to use %1.2f since the 2 decimal places will override the 1 since the 1 is specifying a total field width of 1 but 2 decimal places requires a field width of at least 4, even it the number is less than one. I suggest reading the fprintf documentation more thoroughly (linked above).
Fm = 29801.98;
fprintf('The maximum force, F(m), on the piling is %.2f kN.\n', Fm / 1000); % <<< divide by 1000 to move decimal left 3 places
The maximum force, F(m), on the piling is 29.80 kN.
  2 comentarios
Katherine
Katherine el 28 de Oct. de 2024 a las 22:00
Thank you! <3
Les Beckham
Les Beckham el 31 de Oct. de 2024 a las 14:44
You are quite welcome.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Startup and Shutdown en Help Center y File Exchange.

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by