How do I use a user input for a desired number of decimal places in an fprintf or similar statement? The instructions are to use the user's input to display or print the correct number of decimal places once calculations are performed. Thanks!

2 Ansichten (letzte 30 Tage)
I have tried using something like this to no avail:
fprintf('# Negative:\t\t\t\t\t%0.%f',decimal,neg)
Perhaps I need an sprintf statement or disp after the '# Negative' string? Any suggestions are most appreciated.
  4 Kommentare
Stephen23
Stephen23 am 5 Mär. 2017
According to the fprintf documentation: "The precision operator can be a number, or an asterisk (*) to refer to an argument."
"Example: The input arguments ('%6.4f', pi) are equivalent to ('%*.*f', 6, 4, pi)."
It works, try it:
>> fprintf('%.*f\n', 5, pi)
3.14159

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 5 Mär. 2017
fprintf('whatever %.*f', decimal, neg)

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by