[Résolu]Arbre binaire récursif

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

[Résolu]Arbre binaire récursif

Messagepar chtyvon » Mardi 08 Avril 2014, 20:00

Bonjour, j'ai essayé de faire un arbre décrivant les différents octets possibles, ce qui est un peu long à faire à la main. Voici donc une tentative pour le faire de façon récursive :

Code: Tout sélectionner
\documentclass[12pt]{article}
\usepackage{pst-all}
\usepackage{ifthen}
\newcounter{moncompteur}%

\newcommand{\sousarbre}[2]{\pstree[treemode=R] {\TR{#1}} {%
\ifthenelse{\equal{#2}{2}}{%
\relax%
}{%
\setcounter{moncompteur}{#2}
\addtocounter{moncompteur}{1}%
\sousarbre{0}{\themoncompteur}%
\sousarbre{1}{\themoncompteur}%
}}}

\begin{document}
\pstree[treemode=R] {\TR{}} {%
  \sousarbre{0}{0}\sousarbre{1}{0}}
\end{document}


mais "moncompteur" reste bloqué à 7 et ne redescend pas, ce qui fait que l'arbre est incomplet.
Une ch'tite idée ?

Edit : j'ai trouvé la réponse, en m'inspirant de
http://tex.stackexchange.com/questions/ ... 8580#88580
Code: Tout sélectionner
\documentclass[12pt]{article}
\usepackage{pst-all}

\def\sousarbre#1#2{%
\ifnum#2>-1 \pstree[treemode=R] {\TR{#1}}{%
\edef\numero{\number\numexpr#2-1}%
\sousarbre{0}{\numero}\sousarbre{1}{\numero}}%
\fi}

\def\arbrebinaire#1{\sousarbre{}{#1}}

\begin{document}

\arbrebinaire{4}

\end{document}
chtyvon
Utilisateur
 
Messages: 2
Inscription: Vendredi 09 Octobre 2009, 19:43
Statut actuel: Actif et salarié | Enseignant

Publicité

Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Bing [Bot], Google [Bot], Grapeshot [Crawler] et 28 invités