Maison  >  Article  >  Tutoriel système  >  Effectuer des calculs mathématiques à l'aide de la ligne de commande Linux

Effectuer des calculs mathématiques à l'aide de la ligne de commande Linux

王林
王林avant
2024-01-15 13:39:05784parcourir

Si vous avez besoin d'une calculatrice dans un environnement de bureau graphique, il vous suffit de cliquer jusqu'au bout pour trouver une calculatrice. Par exemple, Fedora Workstation comprend déjà un outil appelé Calculatrice. Il dispose de plusieurs modes de fonctionnement différents, par exemple, vous pouvez effectuer des opérations mathématiques complexes ou des opérations financières. Mais saviez-vous que la ligne de commande fournit également un outil similaire appelé bc ?

bc L'outil peut vous fournir les fonctions que vous attendez d'une calculatrice scientifique, d'une calculatrice financière ou d'une calculatrice simple. De plus, il peut être scripté à partir de la ligne de commande si vous le souhaitez. Cela vous permet de l'utiliser dans des scripts shell lorsque vous devez effectuer des calculs complexes.

Étant donné que bc est également utilisé par d'autres logiciels système, tels que le service d'impression CUPS, il est peut-être déjà installé sur votre système Fedora. Vous pouvez utiliser la commande suivante pour vérifier :

dnf list installed bc

Si pour une raison quelconque vous ne le voyez pas dans le résultat de la commande ci-dessus, vous pouvez utiliser la commande suivante pour l'installer :

sudo dnf install bc
Utilisez bc pour effectuer quelques opérations mathématiques simples

Une façon d'utiliser bc est de l'utiliser dans sa propre coque. Là, vous pouvez effectuer de nombreux calculs ligne par ligne. Lorsque vous tapez bc, la première chose qui apparaît est un avertissement concernant ce programme :

$ bc
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.

Vous pouvez désormais saisir des calculs ou des commandes, un par ligne :

1+1

bc répondra à la réponse à la formule de calcul ci-dessus :

2

Vous pouvez également exécuter d'autres commandes ici. Vous pouvez utiliser l'addition (+), la soustraction (-), la multiplication (*), la division (/), les parenthèses, le signe exposant (^), etc. Veuillez noter que bc suit également toutes les règles de fonctionnement conventionnelles, telles que l'ordre des opérations. Vous pouvez essayer l'exemple suivant :

(4+7)*2
4+7*2

Pour quitter bc, vous pouvez envoyer le signal "fin d'entrée" à bc via la combinaison de touches Ctrl+D.

Une autre façon d'utiliser bc est d'utiliser la commande echo pour transmettre une expression ou une commande. L'exemple suivant est l'exemple "Hello, world" dans la calculatrice, utilisant la fonction pipe du shell (|) pour transmettre la sortie de echo dans bc :

echo '1+1' | bc

À l'aide de tubes shell, vous pouvez envoyer plusieurs opérations, vous devez utiliser des points-virgules pour séparer les différentes opérations. Les résultats seront renvoyés dans des lignes séparées.

echo '1+1; 2+2' | bc
Précision

Dans certains calculs, bc utilise le concept de précision, qui est le nombre de chiffres après la virgule décimale. La précision par défaut est 0. Les opérations de division utilisent toujours le paramètre de précision. Par conséquent, si vous ne définissez pas la précision, cela peut apporter des réponses inattendues :

echo '3/2' | bc
echo 'scale=3; 3/2' | bc

La multiplication utilise un mécanisme de sélection de précision plus complexe :

echo '3*2' | bc
echo '3*2.0' | bc

En même temps, les opérations d'addition et de soustraction associées sont similaires :

echo '7-4.15' | bc
Autres systèmes de base

Une autre fonctionnalité utile de bc est la possibilité d'utiliser d'autres systèmes de comptage que le système décimal. Par exemple, vous pouvez facilement effectuer des opérations mathématiques hexadécimales ou binaires. Vous pouvez utiliser les commandes ibase et obase pour définir respectivement les systèmes de base d'entrée et de sortie. Il faut se rappeler qu'une fois que vous utilisez ibase, tous les nombres que vous entrez par la suite seront considérés comme faisant partie du système de base nouvellement défini.

Pour convertir ou effectuer des opérations de nombres hexadécimaux en nombres décimaux, vous pouvez utiliser des commandes similaires aux suivantes. Attention, les nombres hexadécimaux supérieurs à 9 doivent être en majuscules (A-F) :

echo 'ibase=16; A42F' | bc
echo 'ibase=16; 5F72+C39B' | bc

Si vous souhaitez que le résultat soit un nombre hexadécimal, vous devez définir obase :

echo 'obase=16; ibase=16; 5F72+C39B' | bc

下面是一个小技巧。假如你在 shell 中做这些十六进制运算,怎样才能使得输入重新为十进制数呢?答案是使用 ibase 命令,但你必须设定它为在当前进制中与十进制中的 10 等价的值。例如,假如 ibase 被设定为十六进制,你需要输入:

ibase=A

一旦你执行了上面的命令,所有输入的数字都将是十进制的了,接着你便可以输入 obase=10 来重置输出的进制系统。

结论

上面所提到的只是 bc 所能做到的基础。它还允许你为某些复杂的运算和程序定义函数、变量和循环结构。你可以在你的系统中将这些程序保存为文本文件以便你在需要的时候使用。你还可以在网上找到更多的资源,它们提供了更多的例子以及额外的函数库。快乐地计算吧!


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer