Add s.f. to variable

5 vues (au cours des 30 derniers jours)
Marisabel Gonzalez
Marisabel Gonzalez le 7 Avr 2019
Modifié(e) : A. Sawas le 8 Avr 2019
Hi, I was wondering if there is a way to set specifically the number of s.f. to a variable as you do when printing the answer. For instances,
a=2.335444444444
sprintf ('%.2f',a)
ans =
2.34
I want that but not to print the answer. Instead I want to alter the s.f. used in the variable, i.e. my code would be forced to use 2.34 in its calculations.

Réponses (1)

A. Sawas
A. Sawas le 8 Avr 2019
Modifié(e) : A. Sawas le 8 Avr 2019
I guess you mean by s.f. the format string in the sprintf function which is '%.2f' in your example.
There is a way to specify variable number of characters by using asterisks (*), like this example:
% 6 is the width
% 3 is the number of decimals
% 0.123456 is the number to be formatted
sprintf('%*.*f', 6, 3, 0.123456)
Another longer way would be to use sprintf to build your format string.
fs = sprintf('%%%d.%df',6,3);
sprintf(fs, 0.123456);

Catégories

En savoir plus sur Image Processing Toolbox dans Help Center et File Exchange

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by