Le code ci-après bloque sur le input, avec une erreur

Ouvrir dans l'éditeur Overleaf
! Incomplete \iffalse; all text was ignored after line 23.
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

En lisant pas mal de documentation sur le sujet (je ne connais pas grand chose en programmation TeX), je crois comprendre que le problème est un problème d'expansion : il faudrait que la macro à l'intérieur de input soit exécutée avant le input et ce n'est pas le mode de fonctionnement naturel de TeX.

J'ai essayé des \expandafter, du \edef et plusieurs autres choses, mais sans succès.

Quelqu'un a-t-il une idée ?

Ouvrir dans l'éditeur Overleaf
%ECM
\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{lmodern}
\usepackage{ifthen}
\begin{document}
\newcounter{exo}
%on fait un numéro d'exercice sur deux chiffres
\setcounter{exo}{2}
\def\numeroex {\ifthenelse{\value{exo}<10}{0\theexo}{\theexo}}
%on tente de réutiliser le numéro de l'exercice dans une autre macro
%il y a un fichier exo02.tex dans le répertoire de travail
\input{exo\numeroex} %:( ça veut pas
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Posée 01 Sep '19, 16:14

izb's gravatar image

izb
5325
Taux d'acceptation : 0%

Modifiée 01 Sep '19, 23:32

Pathe's gravatar image

Pathe ♦♦
7.6k49209252


Une possibilité sans \ifthenelse :

Ouvrir dans l'éditeur Overleaf
%ECM
\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{lmodern}
\usepackage{ifthen}
\begin{document}
\newcounter{exo}
%on fait un numéro d'exercice sur deux chiffres
\setcounter{exo}{2}
%\def\numeroex{\ifthenelse{\value{exo}<10}{0\theexo}{\theexo}}
\def\numeroex{\ifnum\value{exo}<10 0\fi\arabic{exo}}
%on tente de réutiliser le numéro de l'exercice dans une autre macro
%il y a un fichier exo02.tex dans le répertoire de travail
\input{exo\numeroex} %:) ça veut
\numeroex
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Lien permanent

Publiée 01 Sep '19, 17:30

samcarter's gravatar image

samcarter
8.6k2817
Taux d'acceptation : 57%

Modifiée 01 Sep '19, 17:40

Merci beaucoup samcarter, cela fonctionne... et sans besoin de \expandafter. Le problème est bien contourné puisqu'il n'y a plus de « sinon ». Il n'y a également pas besoin de l'extension ifthen.

(01 Sep '19, 20:37) izb izb's gravatar image
Votre réponse
[Masquer l'aperçu]

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Mots-clés de la question :

×2

Question posée : 01 Sep '19, 16:14

Question vue : 3,435 fois

Dernière mise à jour : 01 Sep '19, 23:34

Questions similaires

C'est votre première visite ici ? Consultez la FAQ !

×