Listings et algorithme
-
- Utilisateur confirmé
- Messages : 85
- Inscription : jeudi 25 juin 2009, 14:06
Listings et algorithme
Bonjour,
je cherche à utiliser le package listing (que je ne connais pas) pour écrire un algorithme en langage naturel (et ensuite en Python).
Ma question est simple, mais je ne trouve la réponse nulle part (je cherche sans doute mal) : existe-t-il un moyen simple de le faire avec, par exemple, la bonne option pour "language=" ?.
Il faudrait notamment que les affectations soient des flèches vers la gauche pour coller aux programmes du lycée.
Merci d'avance,
Nicolas
je cherche à utiliser le package listing (que je ne connais pas) pour écrire un algorithme en langage naturel (et ensuite en Python).
Ma question est simple, mais je ne trouve la réponse nulle part (je cherche sans doute mal) : existe-t-il un moyen simple de le faire avec, par exemple, la bonne option pour "language=" ?.
Il faudrait notamment que les affectations soient des flèches vers la gauche pour coller aux programmes du lycée.
Merci d'avance,
Nicolas
-
- Utilisateur éprouvé
- Messages : 995
- Inscription : vendredi 12 juin 2009, 22:35
- Statut actuel : Enseignant
- Localisation : Chambéry
Re: Listings et algorithme
pour faire 2 choses très différentes, 2 packages différents :
- pour mettre en forme du pseudo-code, le package algorithm2e
- pour mettre en forme du code, le package listings.
Programmer en TeX, TeXpérimental
-
- Utilisateur confirmé
- Messages : 85
- Inscription : jeudi 25 juin 2009, 14:06
Re: Listings et algorithme
Oui, j'y avais pensé...
ça va peut-être finir comme ça !
ça va peut-être finir comme ça !
-
- Utilisateur chevronné
- Messages : 1136
- Inscription : jeudi 25 novembre 2010, 22:10
Re: Listings et algorithme
Sur le forum, cela a déjà été traité : il faut chercher un peu.
-
- Utilisateur confirmé
- Messages : 85
- Inscription : jeudi 25 juin 2009, 14:06
Re: Listings et algorithme
Comme je l'ai dit, j'ai cherché, sûrement mal, je n'ai pas trouvé, tant pis !
Merci quand même.
Merci quand même.
-
- Administrateur
- Messages : 8078
- Inscription : samedi 28 mai 2005, 14:23
- Statut actuel : Enseignant
Re: Listings et algorithme
Je ne sais pas si ça peut aider, mais on peut créer un nouveau style et un nouveau langage permettant de saisir du code en langage naturel via listings. Voici un exemple assez sommaire.
Et le résultat obtenu.
Code : Tout sélectionner
\documentclass[10pt,oneside]{article}
\usepackage{xcolor,listings}
\lstdefinelanguage{Natural}{keywords={},comment=[l]{}}
\lstdefinestyle{natural}{%
language=Natural,
basicstyle=\footnotesize\ttfamily,
numberstyle=\scriptsize\ttfamily\color{gray},
keywordstyle=\color{blue!75},
stringstyle=\color{red!75},
literate={=}{$\leftarrow{}$}{1} {==}{$={}$}{1},
morestring=[b]",
showtabs=true,
aboveskip=0pt,
belowskip=0pt,
tabsize=2,
numbers=left}
\begin{document}
\begin{lstlisting}[style=natural,morekeywords={x,n}]
n = 0
pour i allant de 1 à 6
x = entier aléatoire compris entre 1 et 6
si x == 6 alors
n = n+1
fin si
fin pour
si n > 0 alors
afficher "Le joueur a gagné."
sinon
afficher "Le joueur a perdu."
fin si
\end{lstlisting}
\end{document}
-
- Utilisateur chevronné
- Messages : 1136
- Inscription : jeudi 25 novembre 2010, 22:10
Re: Listings et algorithme
En tapant mathematex listings ou bien mathematex algorithm2e dans ton moteur préféré, tu vas tomber sur pas mal de liens intéressants.
-
- Utilisateur confirmé
- Messages : 85
- Inscription : jeudi 25 juin 2009, 14:06
Re: Listings et algorithme
Super et merci, c'est exactement ce que j'ai commencé à bricoler mais il y a des idées que je peux utiliser pour améliorer mon environnement.
En fait je partais sur l'idée d'utiliser un seul package pour pouvoir à partir du seul code Python générer un algorithme en langage naturel (et français) et donc éventuellement afficher les deux en vis à vis.
J'ai un peu avancé mais pour l'instant, je ne vois pas bien comment rajouter des "Fin Truc" qui ne sont pas présents en Python.
J'avais évidemment cherché sur internet mais je ne trouvais rien qui ressemble à ce que je souhaitais, d'où ma question ici, au cas où.
En tout cas, merci à tous d'avoir pris du temps pour répondre.
En fait je partais sur l'idée d'utiliser un seul package pour pouvoir à partir du seul code Python générer un algorithme en langage naturel (et français) et donc éventuellement afficher les deux en vis à vis.
J'ai un peu avancé mais pour l'instant, je ne vois pas bien comment rajouter des "Fin Truc" qui ne sont pas présents en Python.
J'avais évidemment cherché sur internet mais je ne trouvais rien qui ressemble à ce que je souhaitais, d'où ma question ici, au cas où.
En tout cas, merci à tous d'avoir pris du temps pour répondre.