Runden von Gleitkommazahlen in csh

Runden von Gleitkommazahlen in csh

Ich habe eine Gleitkommazahl in der Variable $temp gespeichert, etwa 3,046789. Wie können wir diese Zahl mit einer Genauigkeit von 2 Ziffern runden und das gewünschte Ergebnis ist 3,05. Das Skript, das ich habe, ist ein CSH-Skript.

Antwort1

Sie können den Befehl verwendenprintfum Zahlen auf viele Arten zu formatieren, genau wie mit der C-Funktion printf():

Um es unabhängig von der verwendeten Shell zu machen, führen Sie aus/usr/bin/printf

$ LC_ALL=C /usr/bin/printf '%.2f\n' 3.046789
3.05

Die Syntax des Formats wird in der Manpage der Bibliotheksfunktion beschrieben:man 3 printf.

Ich bin mir nicht sicher über die Variablenbehandlung in csh.

Darüber hinaus printfkann es als in die Shell integrierter Befehl verfügbar sein, der dasselbe tut wie in Bash.

verwandte Informationen