How to adjust the decimal place in fprintf statement

54 vues (au cours des 30 derniers jours)
Katherine
Katherine le 28 Oct 2024 à 21:03
Commenté : Les Beckham le 31 Oct 2024 à 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.

Réponse acceptée

Les Beckham
Les Beckham le 28 Oct 2024 à 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 commentaires
Katherine
Katherine le 28 Oct 2024 à 22:00
Thank you! <3
Les Beckham
Les Beckham le 31 Oct 2024 à 14:44
You are quite welcome.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Startup and Shutdown dans Help Center et File Exchange

Produits


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by