Pregunta

En Windows, cuando necesito realizar cálculos básicos, uso una calculadora incorporada. Ahora me gustaría averiguar cuál es la forma común si solo tiene un shell.

Gracias

¿Fue útil?

Solución

Y siempre puedes usar el intérprete de Python, normalmente se incluye en las distribuciones de Linux.

http://docs.python.org /tutorial/introduction.html#using-python-as-a-calculator

$ python
Python 2.6.2 (r262:71605, Apr 14 2009, 22:40:02) [MSC v.1500 32 bit (Intel)]
Type "help", "copyright", "credits" or "license" for more information.
>>> 2+2
4
>>> # This is a comment
... 2+2
4
>>> 2+2  # and a comment on the same line as code
4
>>> (50-5*6)/4
5
>>> # Integer division returns the floor:
... 7/3
2
>>> 7/-3
-3
>>> # use float to get floating point results.
>>> 7/3.0
2.3333333333333335

El signo igual ('=') se usa para asignar un valor a una variable. Posteriormente, no se muestra ningún resultado antes del siguiente mensaje interactivo:

>>> width = 20
>>> height = 5*9
>>> width * height
900

Y, por supuesto, está el módulo matemáticas que debería resolver la mayoría de sus necesidades de calculadora .

>>> import math
>>> math.pi
3.1415926535897931
>>> math.e
2.7182818284590451
>>> math.cos() # cosine
>>> math.sqrt()
>>> math.log()
>>> math.log10()

Otros consejos

De esta página web (para csh y derivados, ya que lo preguntaste):

% @ x = (354 - 128 + 52 * 5 / 3)
% echo Result is $x
Result is 174

y

% set y = (354 - 128 + 52 / 3)
% echo Result is $y
Result is 354 - 128 + 52 / 3

observe los diferentes resultados.

Personalmente, me quedo con / bin / sh y llamo a awk o algo (para una portabilidad máxima), u otros han exhibido el bash enfoque.

Puede usar dc . O bc .

Hay muchas buenas soluciones dadas aquí, pero la forma "clásica" de hacer aritmética en el shell es con expr.

Bash admite aritmética básica (solo entero) dentro $ (()) :

$ echo $(( 100 / 3 ))
33
$ myvar="56"
$ echo $(( $myvar + 12 ))
68
$ echo $(( $myvar - $myvar ))
0
$ myvar=$(( $myvar + 1 ))
$ echo $myvar
57

(ejemplo copiado directamente del enlace de IBM)

Si está usando bash , aquí hay un práctico ejemplo de un pequeño script de shell que le permite hacer cálculos desde la línea de comando (incluida la especificación de precisión para números de punto flotante):

http://www.novell.com/coolsolutions/tools/17043.html

También puede usar Perl fácilmente donde bc o expr no son lo suficientemente potentes:

$ perl5.8 -e '$a=1+2; print "$a\n"' 
3

La opción alternativa es utilizar el comando BC incorporado

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top