come mostrare certo numero di cifre decimali
-
25-09-2019 - |
Domanda
In Matlab, come controllare il numero di cifre decimali per la visualizzazione nella finestra di comando?
Ad esempio,
>> x = 0,4654
x =
0.4654
come visualizzare il valore della variabile x 0,5, 0,47, 0,465 rispettivamente nella finestra di comando?
Grazie!
Soluzione
Non credo che c'è costruito in arrotondamento a luoghi arbitrarie, ma è possibile ottenere il risultato arrotondato facendo round (x * 10 ^ numero di posti ) / 10 ^ numero dei luoghi . Questo stampa con gli zeri finali, se si vuole sbarazzarsi di quelli che hanno a che fare una stampa appositamente formattato come sprintf ai gradi così nel tuo caso si potrebbe ottenere i risultati desiderati per fare:
sprintf('%.1f', round(x*10)/10)
sprintf('%.2f', round(x*100)/100)
sprintf('%.3f', round(x*1000)/1000)
Mi auguro che aiuta!
Edit: Se si desidera farlo per le matrici, non sono sicuro se c'è un modo migliore, ma si può solo ciclo sopra le righe dato x come matrice:
for i=1:length(x(:,1)),
disp(sprintf('%.2f\t', round(x(i,:)*100)/100))
end
Altri suggerimenti
Hai il controllo sopra la finestra dei comandi utilizzando il comando format
. Vi suggerisco di dare un'occhiata a doc format
, che vi dà opzioni specifiche.
Se avete bisogno di una maggiore precisione, si sarebbe meglio utilizzare disp
, e / o di una funzione di arrotondamento come ad esempio: z = round(x/y)*y
Cambia il formato.
format shortG