How to adjust the decimal place in fprintf statement

54 Ansichten (letzte 30 Tage)
Katherine
Katherine am 28 Okt. 2024 um 21:03
Kommentiert: Les Beckham am 31 Okt. 2024 um 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.

Akzeptierte Antwort

Les Beckham
Les Beckham am 28 Okt. 2024 um 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.

Weitere Antworten (0)

Kategorien

Mehr zu Startup and Shutdown finden Sie in Help Center und File Exchange

Produkte


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by