% !TEX encoding = IsoLatin9 \makeatletter\@ifundefined{ifshowcode}{\newif\ifshowcode}{}\makeatother %\showcodetrue \documentclass{test} \begin{document} %EUPP:MLBB %EU>(eupp-overwrite)PP. %EU>(dotimes (test 16)PP. %EU> (let ((macro-1 (lsh (logand test 8) -3))PP. %EU> (condition-1 (lsh (logand test 4) -2))PP. %EU> (macro-2 (lsh (logand test 2) -1))PP. %EU> (condition-2 (logand test 1))PP. %EU> code-1 code-2 dégob-1 gob-1 code)PP. %EU> (eupp-appendPP. %EU> "\\noindent" (number-to-string macro-1)(number-to-string condition-1)PP. %EU> (number-to-string macro-2)(number-to-string condition-2)PP. %EU> ".\\par Attendu : [SUCCÈS]\\par\\ifshowcode\nCode : \\texttt{"PP. %EU> (with-temp-bufferPP. %EU> (insertPP. %EU> (setq code-1PP. %EU> (concatPP. %EU> "\\MGB"PP. %EU> (if (= 1 macro-1) "keep" "drop")PP. %EU> "else*\\if"PP. %EU> (if (= 1 condition-1) "true" "false")PP. %EU> "\\XXXXX")PP. %EU> code-2PP. %EU> (concatPP. %EU> "\\MGB"PP. %EU> (if (= 1 macro-2) "keep" "drop")PP. %EU> "*\\if"PP. %EU> (if (= 1 condition-2) "true" "false")PP. %EU> "\\YYYYY")PP. %EU> dégob-1PP. %EU> (if (= 0 (logand (+ macro-2 condition-2) 1))PP. %EU> (concatPP. %EU> code-2PP. %EU> "\\ok{SUCCÈS}\\YYYYY")PP. %EU> (concatPP. %EU> code-2PP. %EU> "\\wisitedtrue\\fatal{ÉCHEC}\\YYYYY\\unless\\ifwisited\\ok{SUCCÈS}\\fi"PP. %EU> ))PP. %EU> gob-1PP. %EU> (concatPP. %EU> "\\visitedtrue"PP. %EU> code-2PP. %EU> (if (= 0 (logand (+ macro-2 condition-2) 1))PP. %EU> "\\wisitedtrue"PP. %EU> "\\fatal{ÉCHEC}")PP. %EU> "\\YYYYY")PP. %EU> codePP. %EU> (concatPP. %EU> "[\\visitedfalse\\wisitedfalse" code-1PP. %EU> (if (= 0 (logand (+ macro-1 condition-1) 1))PP. %EU> (concatPP. %EU> dégob-1PP. %EU> "\\XXXXX"PP. %EU> gob-1PP. %EU> "\\XXXXX")PP. %EU> (concatPP. %EU> gob-1PP. %EU> "\\XXXXX"PP. %EU> dégob-1PP. %EU> "\\XXXXX"))PP. %EU> "\\ifvisited\\fatal{ÉCHEC}\\fi]")PP. %EU> ))PP. %EU> (goto-char (point-min))PP. %EU> (while (re-search-forward "[\\{}]" nil t)PP. %EU> (replace-match (condPP. %EU> ((string= "\\" (match-string 0)) "\\eslash ")PP. %EU> ((string= "{" (match-string 0)) "\\eoa ")PP. %EU> (t "\\efa "))PP. %EU> t t))PP. %EU> (buffer-substring (point-min) (point-max)))PP. %EU> "}\n\\par\\fi\nProduit : "PP. %EU> codePP. %EU> "\n\\intertest\n"PP. %EU> )))PP. %EU>(eupp-trim-end)PP. %EUPP:MLS. \noindent0000.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBdropelse*\eslash iffalse\eslash XXXXX\eslash MGBdrop*\eslash iffalse\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX\eslash visitedtrue\eslash MGBdrop*\eslash iffalse\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBdropelse*\iffalse\XXXXX\MGBdrop*\iffalse\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX\visitedtrue\MGBdrop*\iffalse\YYYYY\wisitedtrue\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent0001.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBdropelse*\eslash iffalse\eslash XXXXX\eslash MGBdrop*\eslash iftrue\eslash YYYYY\eslash wisitedtrue\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash ok\eoa SUCCÈS\efa \eslash fi\eslash XXXXX\eslash visitedtrue\eslash MGBdrop*\eslash iftrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBdropelse*\iffalse\XXXXX\MGBdrop*\iftrue\YYYYY\wisitedtrue\fatal{ÉCHEC}\YYYYY\unless\ifwisited\ok{SUCCÈS}\fi\XXXXX\visitedtrue\MGBdrop*\iftrue\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent0010.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBdropelse*\eslash iffalse\eslash XXXXX\eslash MGBkeep*\eslash iffalse\eslash YYYYY\eslash wisitedtrue\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash ok\eoa SUCCÈS\efa \eslash fi\eslash XXXXX\eslash visitedtrue\eslash MGBkeep*\eslash iffalse\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBdropelse*\iffalse\XXXXX\MGBkeep*\iffalse\YYYYY\wisitedtrue\fatal{ÉCHEC}\YYYYY\unless\ifwisited\ok{SUCCÈS}\fi\XXXXX\visitedtrue\MGBkeep*\iffalse\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent0011.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBdropelse*\eslash iffalse\eslash XXXXX\eslash MGBkeep*\eslash iftrue\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX\eslash visitedtrue\eslash MGBkeep*\eslash iftrue\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBdropelse*\iffalse\XXXXX\MGBkeep*\iftrue\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX\visitedtrue\MGBkeep*\iftrue\YYYYY\wisitedtrue\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent0100.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBdropelse*\eslash iftrue\eslash XXXXX\eslash visitedtrue\eslash MGBdrop*\eslash iffalse\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash XXXXX\eslash MGBdrop*\eslash iffalse\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBdropelse*\iftrue\XXXXX\visitedtrue\MGBdrop*\iffalse\YYYYY\wisitedtrue\YYYYY\XXXXX\MGBdrop*\iffalse\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent0101.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBdropelse*\eslash iftrue\eslash XXXXX\eslash visitedtrue\eslash MGBdrop*\eslash iftrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX\eslash MGBdrop*\eslash iftrue\eslash YYYYY\eslash wisitedtrue\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash ok\eoa SUCCÈS\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBdropelse*\iftrue\XXXXX\visitedtrue\MGBdrop*\iftrue\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX\MGBdrop*\iftrue\YYYYY\wisitedtrue\fatal{ÉCHEC}\YYYYY\unless\ifwisited\ok{SUCCÈS}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent0110.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBdropelse*\eslash iftrue\eslash XXXXX\eslash visitedtrue\eslash MGBkeep*\eslash iffalse\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX\eslash MGBkeep*\eslash iffalse\eslash YYYYY\eslash wisitedtrue\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash ok\eoa SUCCÈS\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBdropelse*\iftrue\XXXXX\visitedtrue\MGBkeep*\iffalse\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX\MGBkeep*\iffalse\YYYYY\wisitedtrue\fatal{ÉCHEC}\YYYYY\unless\ifwisited\ok{SUCCÈS}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent0111.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBdropelse*\eslash iftrue\eslash XXXXX\eslash visitedtrue\eslash MGBkeep*\eslash iftrue\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash XXXXX\eslash MGBkeep*\eslash iftrue\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBdropelse*\iftrue\XXXXX\visitedtrue\MGBkeep*\iftrue\YYYYY\wisitedtrue\YYYYY\XXXXX\MGBkeep*\iftrue\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent1000.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBkeepelse*\eslash iffalse\eslash XXXXX\eslash visitedtrue\eslash MGBdrop*\eslash iffalse\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash XXXXX\eslash MGBdrop*\eslash iffalse\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBkeepelse*\iffalse\XXXXX\visitedtrue\MGBdrop*\iffalse\YYYYY\wisitedtrue\YYYYY\XXXXX\MGBdrop*\iffalse\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent1001.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBkeepelse*\eslash iffalse\eslash XXXXX\eslash visitedtrue\eslash MGBdrop*\eslash iftrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX\eslash MGBdrop*\eslash iftrue\eslash YYYYY\eslash wisitedtrue\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash ok\eoa SUCCÈS\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBkeepelse*\iffalse\XXXXX\visitedtrue\MGBdrop*\iftrue\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX\MGBdrop*\iftrue\YYYYY\wisitedtrue\fatal{ÉCHEC}\YYYYY\unless\ifwisited\ok{SUCCÈS}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent1010.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBkeepelse*\eslash iffalse\eslash XXXXX\eslash visitedtrue\eslash MGBkeep*\eslash iffalse\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX\eslash MGBkeep*\eslash iffalse\eslash YYYYY\eslash wisitedtrue\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash ok\eoa SUCCÈS\efa \eslash fi\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBkeepelse*\iffalse\XXXXX\visitedtrue\MGBkeep*\iffalse\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX\MGBkeep*\iffalse\YYYYY\wisitedtrue\fatal{ÉCHEC}\YYYYY\unless\ifwisited\ok{SUCCÈS}\fi\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent1011.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBkeepelse*\eslash iffalse\eslash XXXXX\eslash visitedtrue\eslash MGBkeep*\eslash iftrue\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash XXXXX\eslash MGBkeep*\eslash iftrue\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBkeepelse*\iffalse\XXXXX\visitedtrue\MGBkeep*\iftrue\YYYYY\wisitedtrue\YYYYY\XXXXX\MGBkeep*\iftrue\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent1100.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBkeepelse*\eslash iftrue\eslash XXXXX\eslash MGBdrop*\eslash iffalse\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX\eslash visitedtrue\eslash MGBdrop*\eslash iffalse\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBkeepelse*\iftrue\XXXXX\MGBdrop*\iffalse\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX\visitedtrue\MGBdrop*\iffalse\YYYYY\wisitedtrue\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent1101.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBkeepelse*\eslash iftrue\eslash XXXXX\eslash MGBdrop*\eslash iftrue\eslash YYYYY\eslash wisitedtrue\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash ok\eoa SUCCÈS\efa \eslash fi\eslash XXXXX\eslash visitedtrue\eslash MGBdrop*\eslash iftrue\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBkeepelse*\iftrue\XXXXX\MGBdrop*\iftrue\YYYYY\wisitedtrue\fatal{ÉCHEC}\YYYYY\unless\ifwisited\ok{SUCCÈS}\fi\XXXXX\visitedtrue\MGBdrop*\iftrue\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent1110.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBkeepelse*\eslash iftrue\eslash XXXXX\eslash MGBkeep*\eslash iffalse\eslash YYYYY\eslash wisitedtrue\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash unless\eslash ifwisited\eslash ok\eoa SUCCÈS\efa \eslash fi\eslash XXXXX\eslash visitedtrue\eslash MGBkeep*\eslash iffalse\eslash YYYYY\eslash fatal\eoa ÉCHEC\efa \eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBkeepelse*\iftrue\XXXXX\MGBkeep*\iffalse\YYYYY\wisitedtrue\fatal{ÉCHEC}\YYYYY\unless\ifwisited\ok{SUCCÈS}\fi\XXXXX\visitedtrue\MGBkeep*\iffalse\YYYYY\fatal{ÉCHEC}\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest \noindent1111.\par Attendu : [SUCCÈS]\par\ifshowcode Code : \texttt{[\eslash visitedfalse\eslash wisitedfalse\eslash MGBkeepelse*\eslash iftrue\eslash XXXXX\eslash MGBkeep*\eslash iftrue\eslash YYYYY\eslash ok\eoa SUCCÈS\efa \eslash YYYYY\eslash XXXXX\eslash visitedtrue\eslash MGBkeep*\eslash iftrue\eslash YYYYY\eslash wisitedtrue\eslash YYYYY\eslash XXXXX\eslash ifvisited\eslash fatal\eoa ÉCHEC\efa \eslash fi]} \par\fi Produit : [\visitedfalse\wisitedfalse\MGBkeepelse*\iftrue\XXXXX\MGBkeep*\iftrue\YYYYY\ok{SUCCÈS}\YYYYY\XXXXX\visitedtrue\MGBkeep*\iftrue\YYYYY\wisitedtrue\YYYYY\XXXXX\ifvisited\fatal{ÉCHEC}\fi] \intertest %EUPP:BE \noindent Essais ok : \theok\\Essais nok : \thenok \end{document} % Local Variables: % coding: latin-9 % End: