Question

Sous Windows, lorsque je dois effectuer des calculs de base, j'utilise une calculatrice intégrée. Maintenant, j'aimerais savoir quelle est la méthode habituelle si vous n’avez qu’un shell.

Merci

Était-ce utile?

La solution

Et vous pouvez toujours utiliser l'interpréteur python, il est normalement inclus dans les distributions 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

Le signe égal ('=') est utilisé pour affecter une valeur à une variable. Ensuite, aucun résultat ne s'affiche avant la prochaine invite interactive:

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

Et bien sûr, il existe le module mathématique qui devrait résoudre la plupart des besoins de votre calculatrice. .

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

Autres conseils

D'après cette page Web (pour csh et dérivés, puisque vous avez demandé):

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

et

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

remarquez les différents résultats.

Personnellement, je m'en tiens à / bin / sh et j'appelle awk ou quelque chose du genre (pour une portabilité maximale), ou d'autres personnes ont présenté le bash approche.

Vous pouvez utiliser dc . Ou bc .

Il y a beaucoup de bonnes solutions données ici, mais la façon «classique» de faire de l'arithmétique dans la coquille est avec expr.

Bash prend en charge l'arithmétique de base (entier uniquement) . $ (()) :

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

(exemple copié directement à partir du lien IBM)

Si vous utilisez bash , voici un exemple pratique d'un petit script shell permettant d'effectuer des calculs à partir de la ligne de commande (y compris en spécifiant la précision des nombres à virgule flottante):

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

Vous pouvez également utiliser Perl facilement lorsque bc ou expr ne sont pas assez puissants:

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

L’option alternative consiste à utiliser la commande BC intégrée

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top