1. A propos du package algorithm2e
algorithm2e est un package LaTeX qui permet de rédiger des algorithmes de manière claire et structurée. Il offre un ensemble de commandes et d'environnements pour faciliter la mise en forme et la présentation des algorithmes dans un document LaTeX.
Voici une description des principales fonctionnalités de algorithm2e :
- Environnement algorithm: algorithm2e fournit un environnement algorithm dans lequel vous pouvez définir votre algorithme. Cet environnement inclut automatiquement une numérotation et une légende pour l'algorithme.
- Commande \caption: Vous pouvez utiliser la commande \caption{} à l'intérieur de l'environnement algorithm pour ajouter une légende à votre algorithme.
- Commandes de contrôle de flux: algorithm2e propose des commandes pour les structures de contrôle de flux telles que les boucles "pour" (\For), les boucles "tant que" (\While), les boucles "répéter" (\Repeat), et les structures conditionnelles "si-alors" (\If, \ElseIf, \Else).
- Indentation automatique: L'indentation de l'algorithme est automatiquement gérée par le package, vous n'avez donc pas à vous soucier de l'alignement des blocs.
- Commandes d'attribution et d'affichage: Vous pouvez utiliser des commandes comme \LeftArrow ou \leftarrow pour attribuer des valeurs aux variables, et \textbf{Afficher} ou simplement Afficher pour afficher des valeurs ou des résultats.
- Personnalisation de la mise en forme: Vous pouvez personnaliser l'apparence de l'algorithme en ajustant les options du package. Par exemple, vous pouvez choisir d'afficher ou de masquer le mot clé "Afficher", décider d'utiliser des traits verticaux pour encadrer les blocs (vlined), définir un style particulier pour les mots clés, etc.
- Numérotation des lignes: Les lignes de l'algorithme sont automatiquement numérotées, ce qui facilite les références croisées et la compréhension du code.
- Gestion des commentaires: Vous pouvez ajouter des commentaires dans l'algorithme à l'aide de la commande \tcp{}.
- Conclusion: en utilisant le package algorithm2e, vous pouvez rédiger des algorithmes de manière professionnelle et élégante dans vos documents LaTeX, ce qui est particulièrement utile lorsque vous avez besoin d'expliquer des algorithmes complexes ou des méthodes algorithmiques dans un article scientifique, un rapport technique ou une thèse.
2. Outils nécessaires
Tout ce dont vous aurez besoin pour pouvoir utiliser le package algorithme2e, c'est d'avoir un environnement LaTeX installé et configuré avec un IDE LaTeX:
- MikTeX: Télécharger et installer la bibliothèque MikTeX depuis le site officiel: https://miktex.org/download
- IDE LaTeX: Télécharger et installer un IDE LaTeX, nous vous recommandons Texmaker
3. Syntaxe et exemples d'usage
3.1 Syntaxe
Assurez-vous d'avoir inclus le package algorithm2e dans votre préambule :
1 |
\usepackage[linesnumbered,ruled,vlined]{algorithm2e} |
Utilisez l'environnement algorithm pour définir votre algorithme :
1 2 3 4 5 6 7 8 9 10 11 |
\begin{algorithm} \caption{Nom de l'algorithme} \KwData{Données d'entrée} \KwResult{Résultat} \While{Condition}{ Instructions à l'intérieur de la boucle\; } Instructions en dehors de la boucle\; \end{algorithm} |
3.2 Exemple complet
Voici un exemple complet :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
\documentclass{article} \usepackage[linesnumbered,ruled,vlined]{algorithm2e} \begin{document} \begin{algorithm} \caption{Algorithme d'addition} \KwData{Deux nombres entiers $a$ et $b$} \KwResult{La somme $s = a + b$} $s \leftarrow a + b$\; Afficher $s$\; \end{algorithm} \end{document} |
Ce code affichera:
- un algorithme d'addition: avec une entrée $a$ et $b$,
- une sortie: qui affiche la variable $s$
- document PDF: il compilera en un document PDF avec l'algorithme correctement formaté.
- Personnalisation: Vous pouvez personnaliser l'apparence de l'algorithme en ajustant les options du package algorithm2e.
4. Utilisation des structure Pour...FinPour et Si...Alors
4.1 Boucle Pour...FinPour
Pour utiliser la boucle: Pour i = 1 jusqu'à n, algorithme2e nous offre la commande suivante:
1 |
\For{$i \leftarrow 1$ \KwTo $n$} |
\leftarrow | est utilisé pour afficher la flèche d'affectation | ... |
4.2 Structure conditionnelle Si...Alors
Pour utiliser la structure conditionnelle: Si...Alors, algorithme2e nous offre la commande suivante:
1 2 3 4 5 6 |
\eIf{Condition}{ Instructions }{ Instruction si la condition n'est pas satisfaite } } |
Voici un exemple d'algorithme en LaTeX avec une boucle "Pour...FinPour" et une structure conditionnelle "Si...Alors" :
Exemple complet
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
\documentclass{article} \usepackage[linesnumbered,ruled,vlined]{algorithm2e} \begin{document} \begin{algorithm} \caption{Algorithme avec boucle pour et si-alors} \KwData{Un nombre entier positif $n$} \KwResult{La somme des entiers de 1 à $n$: $s = 1 + 2 + \ldots + n$} $s \leftarrow 0$\; \For{$i \leftarrow 1$ \KwTo $n$}{ \eIf{$i$ est pair}{ $s \leftarrow s + i$\; }{ $s \leftarrow s - i$\; } } Afficher $s$\; \end{algorithm} \end{document} |
Dans cet exemple:
- nous utilisons une boucle "Pour...FinPour": pour itérer de 1 à $n$, et à chaque itération:
- nous vérifions si $i$ est pair: Si c'est le cas, nous ajoutons $i$ à la somme $s$, sinon nous soustrayons $i$ de la somme $s$.
- Affichage du résultat: à la fin de la boucle, nous affichons la somme résultante $s$.
Younes Derfoufi
CRMEF OUJDA