Arredondando números flutuantes em csh

Arredondando números flutuantes em csh

Eu tenho um número flutuante armazenado em uma variável $temp, como 3.046789. Como podemos arredondar esse número com precisão de 2 dígitos e o resultado que preciso é 3,05. O script que tenho é um script csh.

Responder1

Você pode usar o comandoprintfpara formatar números de várias maneiras, assim como acontece com a função C printf():

Para torná-lo independente do shell usado, execute/usr/bin/printf

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

A sintaxe do formato é descrita na página man da função da biblioteca:man 3 printf.

Não tenho certeza sobre o tratamento de variáveis ​​no csh.

Além disso, printfpode estar disponível como um comando interno do shell que faz o mesmo, como no bash.

informação relacionada