how to print E formated numbers.
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Pappu Murthy
il 8 Mar 2018
Commentato: Star Strider
il 8 Mar 2018
I have numbers such as 0.1032E-02 (say) If I read this as x = 0.1032E-02 and save it to a text file using fopen, and fprintf fid = fopen('Testing.txt','wt'); fprintf(fid, '%15.5E\n',x) it always prints x as 1.032E-03 but I would like the 0 in front just as the way I assigned the value to x. How do i do it?
2 Commenti
Stephen23
il 8 Mar 2018
Modificato: Stephen23
il 8 Mar 2018
@Pappu Murthy: Numeric data classes do not store any formatting, so printing a number "just as the way I assigned the value to x" is not possible in general: a value will simply be displayed according to the fprintf specification. With that in mind: if you need to convert to numeric, do you always want a leading zero in the printed output?
Risposta accettata
Star Strider
il 8 Mar 2018
Try this little utility anonymous function I wrote a while back to solve this exact problem:
a = 0.1032E-02
expstr = @(x) [x*10.^floor(-log10(abs(x))) floor(log10(abs(x))+1)];
Result = sprintf('%.7fE%+03d', expstr(a))
Result =
'0.1032000E-02'
5 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Argument Definitions in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!