logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
doc:programmation:shells:page-man-bash-iv-symboles-dans-les-calculs-mathematiques [10/04/2014 09:29]
Hypathie [Page man bash IV, Symboles dans les calculs mathématiques]
doc:programmation:shells:page-man-bash-iv-symboles-dans-les-calculs-mathematiques [08/07/2014 17:51]
Hypathie [Opérateurs binaires]
Ligne 1: Ligne 1:
-======Page man bash IV, Symboles ​dans les calculs ​mathématiques======+======Bash : les symboles ​dans les calculs======
  
-  * Objet : Ne plus confondre ​les différents ​caractères de BASH+  * Objet : suite de la série de wiki visant à maîtriser bash via les différents ​caractère spéciaux.
   * Niveau requis : {{tag>​débutant}}   * Niveau requis : {{tag>​débutant}}
   * Commentaires : scripts   * Commentaires : scripts
   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)
-  * Suivi : {{tag>​en-chantier à-tester ​à-placer}}  +  * Suivi : {{tag>​en-chantier à-tester }}  
-    * Création par **Hypathie** 08/​04/​2014 +    * Création par [[user>Hypathie]] 08/​04/​2014 
-    * Testé par <Hypathiele <Avril 2014> +    * Testé par Hypathie le Avril 2014 
-  * Commentaires sur le forum : [[debian-facile.org/​viewtopic.php?​pid=87499#​p87499 | Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME+  * Commentaires sur le forum : [[https://debian-facile.org/​viewtopic.php?​pid=87499#​p87499 | ici]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
  
-**Nota : suite du petit commentaire sur les caractères de la page man bash** 
  
-1) Intro :  ​[[atelier:​chantier:​bash-les-differents-caracteres-speciaux?&#meta-caracteres-et-meta-caracteres|méta-caractères et méta-caractères]]+  * [[atelier:​chantier:​bash-les-differents-caracteres-speciaux|Vision d'​ensemble]] 
 +  * [[atelier:​chantier:​la-page-man-bash-les-caracteres-speciaux|Détail ​et caractères]] 
 +  * [[atelier:​chantier:​la-page-man-bash-ii-les-operateurs-lexicographiques|Les opérateurs lexicographiques]] 
 +  * [[atelier:​chantier:​page-man-bash-iii-les-operateurs-de-comparaison-numerique|Les opérateurs de comparaison numérique]] 
 +  * [[atelier:​chantier:​page-man-bash-v-les-tableaux|Les tableaux]] 
 +  * [[atelier:​chantier:​man-bash-vi-les-caracteres-de-transformation-de-parametres|Les ​caractères ​de transformation de parametres]] 
 +  * [[atelier:​chantier:​bash-vii-globs-etendus-regex| Globs étendus et regex]]
  
-2) chap I : [[atelier:​chantier:​la-page-man-bash-les-caracteres-speciaux|caractères spéciaux]]+Contributeurs,​ les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
  
-3) chap II : [[atelier:​chantier:​la-page-man-bash-ii-les-operateurs-lexicographiques|opérateurs lexicographiques]]+=====Opérateurs arithmétiques =====
  
-4) chap III : [[atelier:​chantier:​page-man-bash-iii-les-operateurs-de-comparaison-numerique|opérateurs de comparaison numérique]]+^opérateurs ​       ^opérations ​                    ^ 
 +| <​code>​+</​code> ​  | addition ​                     | 
 +| <​code>​-</​code> ​  | soustraction ​                 | 
 +| <​code>/</​code> ​  | division (récup. le quotient) |  
 +| <​code>​%</​code> ​  | modulo (récup. le reste) ​     | 
 +| <​code>​*</​code> ​  | multiplication ​               | 
 +| <​code>​** </​code>​ | puissance (bash 2.02 et sup.) |
  
-5) chap IV : C'​est ​ici !+**Pour les calculs complexes bash n'​est ​pas adapté, il faut utiliser le langage bc.**
  
-6) chap V : [[atelier:​chantier:​page-man-bash-v-les-tableaux|les tableaux]]+=====Opérateurs d'​affectation arithmétique=====
  
-7) chap VI : [[atelier:​chantier:​man-bash-vi-les-caracteres-de-transformation-de-parametres]]\\ ​+^opérateurs ​               ^opérations ​                      ^ 
 +| <​code>​=</​code> ​          | affectation arithmétique ​       | 
 +| <​code>​+=</​code> ​         | incrémentation ​                 | 
 +| <​code>​-=</​code> ​         | décrémentation ​                 | 
 +| <​code>/​=</​code> ​         | affectation par division ​       | 
 +| <​code>​+=</​code> ​         | affectation par multiplication ​ | 
 +| <​code>​%=</​code> ​         | afectation du reste             |
  
-8) chap VII : [[atelier:​chantier:​bash-vii-globs-etendus-regex]] +**Voir ​:** 
-Contributeurs,​ les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !+  * **[[atelier:​chantier:​script-bash-variables-arguments-parametres?&#​typologie-des-variables|typologie de variables]]** 
 +  * **[[atelier:​chantier:​script-bash-variables-arguments-parametres?&#​variables-numeriques-et-calculs|variables numériques et calculs]]**
  
-=====Symboles dans les calculs mathématiques ​===== +=====Opérateurs binaires ​===== 
-====1) La construction :==== +Ces opérateurs s'​utilisent sur des binaires, (sur des et des zéro).
-<​code>​ +
- ((...))  +
-</​code>​ permet une évaluation arithmétique.  +
-<​code>​ +
-#​!/​bin/​bash +
-a=$(( 5 + 3 )) +
-echo $a           # réponse 8 +
-b=$(( 5 - 2 )) +
-echo $b           # réponse 3 +
-c=$(( 6 * 2 )) +
-echo $c           # réponse 12 +
-d=$(( 10 / 3 )) +
-echo $d           # réponse 3 +
-e=$(( 10 % 3 )) +
-echo $e           # réponse 1 +
-</​code>​+
  
-====2avec la commande let (les signes mathématiques ont la même fonction:==== +^ Opérateurs ​      ^ significations ​                                            ^ 
-<code> +| ''<<'' ​ | décalage d'un bit à gauche (=mutiplication par deux      | 
-#​!/​bin/​bash +| ''>>''​ | décalage d'un bit à droite ​(=division par deux           | 
-let "a = 5" +| ''&​<'' ​  ​| ​"et" ​logique ​ (ex : on une variable=1; si on fait &1 cela fait 1 (en binaire 1 et 1 1)| 
-let "b = 10" +| ''​|<'' ​ ou (inclusif) binaire ​                                     | 
-let "c = + b" +| ''​~'' ​  | non binaire ​                                               | 
-let "ea * b" +''​^'' ​  | XOR (ou exclusif) binaire ​                                 | 
-let "fb / a" +
-let "g= b % a" +
-echo -e  "$c \n$e \n$f \n$g" ​ # ou /bin/echo "$c $e $f $g" +
-# réponse :  +
-15  +
-50  +
-2  +
-+
-# bashisme de l'option -e pour forcer le retour à la ligne pour chaque appel de valeur $c $e $f $g +
-# réponse : 15 50 2 0 +
-</​code>​+
  
-====3) écriture proche de c :==== +<note
-<code+''&<''​( et binaire), ''​|<''​ (ou binaire), et ''​~''​(non binaire)\\ peuvent aussi être remplacés (de façon équivalente) par les opérateurs logiques que l'​on ​vu pour la composition ​de commandes sur erreur et sur réussite.
-let "a = 5" +
-let "b = 10" +
-let "c = a *= 3" +
-let "d = a += 3" ​    # valeur précédente ​de a conservée ​pour calculer d : 15+3 =18 +
-let "e = b /= 3" +
-let "f = b /= 3" ​   # valeur précédente ​de b conservée pour calculer f : 3/3 =1 +
-echo "c=$c d=$d e=$e f=$f" # réponse : c=15 d=18 e=3 f=1 +
-i=1 +
-let "i += 7" +
-echo "​i=$i" ​       # réponse : i=8 +
-j=4 +
-let "j *= 5" +
-echo "​j=$j" ​       # réponse : j=20 +
-</​code>​+
  
-====4) écriture ​utile pour les boucles ​==== +> ''&&'' ​ : exécution de la commande suivante si, et seulement si la précédente renvoie 0 
-  * **post-incrémentation ​avec conservation de la la valeur ​et idem pour pré-incrémentation :**+> ''​||'' ​ : exécution de la commande suivante si, et seulement si la précédente renvoie autre chose que 0 
 +> ''​!'' ​  : inverse du retour d'une commande, c'est à dire un "​non"​ logique 
 +^_^ 
 +</​note>​ 
 +===== Écriture ​utile pour les boucles ​===== 
 +===post-incrémentation et pré-incrémentation :===
  
-<​code>​+<​code ​bash>
 #!/bin/bash #!/bin/bash
 declare -i x=20 y  # ici les signes = permettent une affection declare -i x=20 y  # ici les signes = permettent une affection
Ligne 96: Ligne 78:
 </​code>​ </​code>​
  
-<​code>​+<​code ​bash>
 #!/bin/bash #!/bin/bash
 declare -i x=20 y declare -i x=20 y
Ligne 105: Ligne 87:
 </​code>​ </​code>​
  
-  * **post-décrémentation ​avec conservation de la la valeur ​et idem pour pré-décrémentation :** +===post-décrémentation et pré-décrémentation :=== 
-<​code>​+<​code ​bash>
 #!/bin/bash #!/bin/bash
 declare -i x=20 y declare -i x=20 y
Ligne 115: Ligne 97:
 </​code>​ </​code>​
  
-<​code>​+<​code ​bash>
 #!/bin/bash #!/bin/bash
 declare -i x=20 y declare -i x=20 y
Ligne 124: Ligne 106:
 </​code>​ </​code>​
  
-===La suite, c'est ici : === +=====Tuto précédent ===== 
-[[atelier:​chantier:​page-man-bash-v-les-tableaux]]+ 
 +[[atelier:​chantier:​page-man-bash-iii-les-operateurs-de-comparaison-numerique|Bash : les opérateurs de comparaison numérique]]
  
-===tuto précédent :=== +=====La suite, c'est ici ===== 
-[[atelier:​chantier:​page-man-bash-iii-les-operateurs-de-comparaison-numerique?&#​operateurs-de-comparaison-numerique]]+[[atelier:​chantier:​page-man-bash-v-les-tableaux|Bash : les tableaux]]
doc/programmation/shells/page-man-bash-iv-symboles-dans-les-calculs-mathematiques.txt · Dernière modification: 26/04/2023 19:29 par bendia

Pied de page des forums

Propulsé par FluxBB