summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-08-15 20:21:44 +0000
committerKarl Berry <karl@freefriends.org>2023-08-15 20:21:44 +0000
commit5ce1490e3dfe124d646d39abb88e8e2c39050a16 (patch)
tree56bf76278ffc31440344fa77bb3a6ed728637cd4 /Master/texmf-dist/tex
parent1882a0b189274c22ea749ae66b2f91bb4e85d8c2 (diff)
profcollege (15aug23)
git-svn-id: svn://tug.org/texlive/trunk@67936 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCalculatrice.tex28
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDefiCalc.tex38
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheJeu.tex8
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMentalo.tex117
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/ProfCollege.sty5
5 files changed, 140 insertions, 56 deletions
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCalculatrice.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCalculatrice.tex
index 8a7efd33429..eb1a55e7688 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCalculatrice.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCalculatrice.tex
@@ -14,7 +14,7 @@
\colorlet{greenish}{green!16!gray}%
\colorlet{redish}{red!80!black}%
-\tcbset{calbackground/.style={
+\tcbset{calbackground/.style={%
enhanced,
leftright skip=0.25cm,beforeafter skip=0pt,
toptitle=0mm,bottomtitle=0mm,
@@ -34,7 +34,7 @@
autoparskip,
}}%
-\newtcbox{\KY}[1][]{
+\newtcbox{\KY}[1][]{%
enhanced,
on line,
arc=2pt,outer arc=2pt,
@@ -51,7 +51,7 @@
before upper=\vrule width 0pt height 2ex depth 1ex\relax,
}%
-\newtcbox{\KYm}[1][]{
+\newtcbox{\KYm}[1][]{%
enhanced,
on line,
arc=2pt,outer arc=2pt,
@@ -69,7 +69,7 @@
after upper=$,
}%
-\newtcbox{\KN}{
+\newtcbox{\KN}{%
enhanced,
on line,
arc=2pt,outer arc=2pt,
@@ -107,30 +107,28 @@
at (frame.north east) {#1};}
}
-\def\MPCalculatrice#1#2#3{
+\def\MPCalculatrice#1#2#3{%
% #1 Calcul %2 r\'eponse
- \ifluatex
- \mplibnumbersystem{double}
+ \ifluatex%
+ \mplibnumbersystem{double}%
\mplibforcehmode%
\begin{mplibcode}%
input PfCCalculatrice;
LargeurEcran:=\useKV[ClesCalculatrice]{Largeur};
boolean Calcul;
Calcul=\useKV[ClesCalculatrice]{Calcul};
+ print:=\useKV[ClesCalculatrice]{Impression};
LCD(#1)(#2)(#3);
- \end{mplibcode}
- \mplibnumbersystem{scaled}
- \else
+ \end{mplibcode}%
+ \mplibnumbersystem{scaled}%
+ \else%
\begin{mpost}[mpsettings={input PfCCalculatrice;LargeurEcran:=\useKV[ClesCalculatrice]{Largeur};}]
LCD(#1)(#2)(#3);
\end{mpost}
- \fi
+ \fi%
}%
-\setKVdefault[ClesCalculatrice]{Ecran=false,NbLignes=0,BL=0.775,Largeur=120,Calcul=false}
-
-\newtoks\toklistenombrecalculatrice
-\def\UpdatetoksCalculatrice#1\nil{\addtotok\toklistenombrecalculatrice{"\fpeval{#1}"}}
+\setKVdefault[ClesCalculatrice]{Ecran=false,NbLignes=0,BL=0.775,Largeur=120,Calcul=false,Impression=false}%
\newcommand\Calculatrice[2][]{%
\setstackgap{L}{\useKV[ClesCalculatrice]{BL}\baselineskip}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDefiCalc.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDefiCalc.tex
new file mode 100644
index 00000000000..8e26111a315
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDefiCalc.tex
@@ -0,0 +1,38 @@
+%%%
+% Defi Calculatrice
+%%%
+\setKVdefault[DefiCalculatrice]{NbCasesNoires=6,ListeTouches={!},Impression=false}%
+
+\newtoks\toktexteecran{}
+\newtoks\tokcibleecran{}
+\def\UpdatetoksTexteEcran#1\nil{\addtotok\toktexteecran{_}}
+\def\UpdatetoksCibleEcran#1\nil{\addtotok\tokcibleecran{"#1"}}
+
+\NewDocumentCommand\DefiCalculatrice{om}{%
+ \useKVdefault[DefiCalculatrice]%
+ \setKV[DefiCalculatrice]{#1}%
+ \defKV[DefiCalculatrice]{Impression=\setKV[ClesCalculatrice]{Impression}}%
+ \toktexteecran{"}%
+ \tokcibleecran{}%
+ \xdef\PfCFooDCListe{\useKV[DefiCalculatrice]{ListeTouches}}
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\PfCDCListeEffacer{\PfCFooDCListe}%
+ \reademptyitems%
+ \xintFor* ##1 in{\xintSeq{1}{\useKV[DefiCalculatrice]{NbCasesNoires}}}\do{%
+ \expandafter\UpdatetoksTexteEcran##1\nil
+ }%
+ \addtotok\toktexteecran{"}
+ \expandafter\UpdatetoksCibleEcran#2\nil
+ % Dessin de la calculatrice
+ \begin{tcolorbox}[nobeforeafter,left=0pt,right=0pt,top=0pt,bottom=0pt,width=69pt]
+ \setlength{\tabcolsep}{0.01\tabcolsep}
+ \begin{tabular}{*{4}{m{20pt}}}
+ \ifboolKV[DefiCalculatrice]{Impression}{\multicolumn{4}{c}{\Calculatrice[Ecran,Largeur=40,Impression]{\the\toktexteecran/\the\tokcibleecran}}}{\multicolumn{4}{c}{\Calculatrice[Ecran,Largeur=40]{\the\toktexteecran/\the\tokcibleecran}}}\\
+ \multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{7}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/7}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{8}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/8}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{9}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/9}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{/}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/$\div$}}}\\
+ \multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{4}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/4}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{5}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/5}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{6}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/6}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{*}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/$\times$}}}\\
+ \multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{1}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/1}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{2}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/2}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{3}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/3}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{-}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/$-$}}}\\
+ \multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{0}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/0}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{.}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/.}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{=}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/$=$}}}&\multicolumn{1}{c}{\IfSubStr{\useKV[DefiCalculatrice]{ListeTouches}}{+}{\Calculatrice{/\faScrewdriver}}{\Calculatrice{/$+$}}}\\
+ \end{tabular}
+ \setlength{\tabcolsep}{100\tabcolsep}
+ \end{tcolorbox}
+}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheJeu.tex b/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheJeu.tex
index da8b011cc69..5922748104b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheJeu.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheJeu.tex
@@ -6,6 +6,8 @@
\tikzset{FDirect/.style={-stealth}}
\tikzset{FIndirect/.style={stealth-}}
\tikzset{FBidirect/.style={stealth-stealth}}
+\tikzset{PfCStyleI/.style={near start}}
+\tikzset{PfCStyle/.style={near start}}
\newlength{\LabyLongCM}
@@ -75,7 +77,7 @@
\ifboolKV[Labyrinthe]{Passages}{%
\xdef\NomNode{\noexpand\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-2)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)+2},1]}%
\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-2)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)+2},2]>0}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-2)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)+2},2]==1}{\xdef\NomStyle{FDirect}}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-2)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)+2},2]==2}{\xdef\NomStyle{FIndirect}}{\xdef\NomStyle{FBidirect}}}%
- \draw[\CouleurF,line width=3pt,\NomStyle] (A-\compteurh-\compteurv) -- node[fill=white,near start,\LabySlop,inner sep=2pt]{\MotifTexte\NomNode}(A-\fpeval{\compteurh+1}-\fpeval{\compteurv-1});
+ \draw[\CouleurF,line width=3pt,\NomStyle] (A-\compteurh-\compteurv) -- node[fill=white,PfCStyleI,\LabySlop,inner sep=2pt]{\MotifTexte\NomNode}(A-\fpeval{\compteurh+1}-\fpeval{\compteurv-1});
}{}
}{%
\draw[\CouleurF,line width=3pt,FBidirect] (A-\compteurh-\compteurv) -- (A-\fpeval{\compteurh+1}-\fpeval{\compteurv-1});
@@ -89,10 +91,10 @@
\xdef\NomNode{\noexpand\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)+1},1]}%
\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)+1},2]>0}{%
\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)+1},2]==1}{\xdef\NomStyle{FDirect}}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)+1},2]==2}{\xdef\NomStyle{FIndirect}}{\xdef\NomStyle{FBidirect}}}
- \draw[\CouleurF,line width=3pt,\NomStyle] (A-\compteurh-\compteurv) -- node[fill=white,near start,\LabySlop,inner sep=2pt]{\MotifTexte\NomNode}(A-\fpeval{\compteurh+1}-\fpeval{\compteurv+1});
+ \draw[\CouleurF,line width=3pt,\NomStyle] (A-\compteurh-\compteurv) -- node[fill=white,PfCStyle,\LabySlop,inner sep=2pt]{\MotifTexte\NomNode}(A-\fpeval{\compteurh+1}-\fpeval{\compteurv+1});
}{}%
}{%
- \draw[\CouleurF,line width=3pt,FBidirect] (A-\compteurh-\compteurv) -- node[fill=white,near start,\LabySlop]{\MotifTexte\NomNode}(A-\fpeval{\compteurh+1}-\fpeval{\compteurv+1});
+ \draw[\CouleurF,line width=3pt,FBidirect] (A-\compteurh-\compteurv) -- node[fill=white,PfCStyle,\LabySlop]{\MotifTexte\NomNode}(A-\fpeval{\compteurh+1}-\fpeval{\compteurv+1});
}%
}%
}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMentalo.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMentalo.tex
index da5dfc85e7f..84176c0d1ff 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMentalo.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMentalo.tex
@@ -13,46 +13,91 @@
\fi%
}%
-\setKVdefault[Mentalo]{Questions=10,ValeurMin=1,ValeurMax=15}
+\setKVdefault[Mentalo]{Questions=10,ValeurMin=1,ValeurMax=15,Perso=false}
\NewDocumentCommand\Mentalo{o m}{%
\useKVdefault[Mentalo]%
\setKV[Mentalo]{#1}%
- \xdef\PfCMentaloEtages{\fpeval{\useKV[Mentalo]{Questions}+1}}
- \setsepchar{,}\ignoreemptyitems%
- \readlist*\PfCMentaloListeOperations{#2}%
- \reademptyitems%
- \setlength{\tabcolsep}{0.25\tabcolsep}
- \renewcommand{\arraystretch}{1.5}
- \begin{NiceTabular}{*{\fpeval{\PfCMentaloEtages}}{m{5pt}}m{20pt}cm{20pt}cl*{\fpeval{\PfCMentaloEtages}}{m{5pt}}*{5}{m{15pt}}*{1}{m{10pt}}}
- \Block{1-\fpeval{\PfCMentaloEtages}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages}}}\do{&}%
- \Block[draw,fill=gray!15]{1-5}{Arrivée}&&&&&\Block{1-\fpeval{\PfCMentaloEtages}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages}}}\do{&}\\
- \xintFor* ##1 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages-1}}}\do{%
- \Block{1-\fpeval{\PfCMentaloEtages-##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages-##1}}}\do{&}%
- \Block[borders={top,left,bottom}]{1-\fpeval{##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{##1}}}\do{&}%
- \Block[borders={top,bottom}]{1-1}{%
- \xdef\PfCMentaloPremierTerme{\fpeval{randint(\useKV[Mentalo]{ValeurMin},\useKV[Mentalo]{ValeurMax})}}%
- \num{\PfCMentaloPremierTerme}}&\Block[borders={top,bottom}]{1-1}{%
- \xintifboolexpr{\PfCMentaloListeOperationslen==1}{%
- \StrSubstitute{\PfCMentaloListeOperations[1]}{*}{\times}[\PfCCBAffiche]$\PfCCBAffiche$%
- }{%
- \StrSubstitute{\PfCMentaloListeOperations[##1]}{*}{\times}[\PfCCBAffiche]$\PfCCBAffiche$%
+ \ifboolKV[Mentalo]{Perso}{%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\PfCMentaloListeOperations{#2}%
+ \reademptyitems%
+ \xdef\PfCMentaloEtages{\fpeval{\PfCMentaloListeOperationslen+1}}%
+ \setlength{\tabcolsep}{0.25\tabcolsep}%
+ \renewcommand{\arraystretch}{1.5}%
+ \begin{NiceTabular}{*{\fpeval{\PfCMentaloEtages}}{m{5pt}}m{20pt}cm{20pt}cl*{\fpeval{\PfCMentaloEtages}}{m{5pt}}*{5}{m{15pt}}*{1}{m{10pt}}}
+ \Block{1-\fpeval{\PfCMentaloEtages}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages}}}\do{&}%
+ \Block[draw,fill=gray!15]{1-5}{Arrivée}&&&&&\Block{1-\fpeval{\PfCMentaloEtages}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages}}}\do{&}\\
+ \xintFor* ##1 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages-1}}}\do{%
+ \Block{1-\fpeval{\PfCMentaloEtages-##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages-##1}}}\do{&}%
+ \Block[borders={top,left,bottom}]{1-\fpeval{##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{##1}}}\do{&}%
+ \Block[borders={top,bottom}]{1-1}{%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{+}{\StrBefore{\PfCMentaloListeOperations[##1]}{+}[\PfCMentaloPremierTerme]\num{\PfCMentaloPremierTerme}}{}%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{-}{\StrBefore{\PfCMentaloListeOperations[##1]}{-}[\PfCMentaloPremierTerme]\num{\PfCMentaloPremierTerme}}{}%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{*}{\StrBefore{\PfCMentaloListeOperations[##1]}{*}[\PfCMentaloPremierTerme]\num{\PfCMentaloPremierTerme}}{}%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{/}{\StrBefore{\PfCMentaloListeOperations[##1]}{/}[\PfCMentaloPremierTerme]\num{\PfCMentaloPremierTerme}}{}%
+ }&
+ \Block[borders={top,bottom}]{1-1}{%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{+}{$+$}{}%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{-}{$-$}{}%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{*}{$\times$}{}%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{/}{$\div$}{}%
}%
- }&%
- \Block[borders={top,bottom}]{1-1}{\xdef\PfCMentaloDeuxiemeTerme{\fpeval{randint(\useKV[Mentalo]{ValeurMin},\useKV[Mentalo]{ValeurMax})}}%
- \PfCNum{\PfCMentaloDeuxiemeTerme}}&\Block[borders={top,bottom}]{1-1}{$=$}&\Block[borders={top,bottom}]{1-1}{\pointilles[20pt]}&%
- \Block[borders={top,right,bottom}]{1-\fpeval{##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{##1}}}\do{&}%
- \Block{1-\fpeval{\PfCMentaloEtages-##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages-##1}}}\do{&}%
- &&&&\Block{1-2}{%
- \xintifboolexpr{\PfCMentaloListeOperationslen==1}{%
- \num{\fpeval{\PfCMentaloPremierTerme\PfCMentaloListeOperations[1]\PfCMentaloDeuxiemeTerme}}
- }{%
- \num{\fpeval{\PfCMentaloPremierTerme\PfCMentaloListeOperations[##1]\PfCMentaloDeuxiemeTerme}}
+ &
+ \Block[borders={top,bottom}]{1-1}{%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{+}{\StrBehind{\PfCMentaloListeOperations[##1]}{+}[\PfCMentaloDeuxiemeTerme]\num{\PfCMentaloDeuxiemeTerme}}{}%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{-}{\StrBehind{\PfCMentaloListeOperations[##1]}{-}[\PfCMentaloDeuxiemeTerme]\num{\PfCMentaloDeuxiemeTerme}}{}%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{*}{\StrBehind{\PfCMentaloListeOperations[##1]}{*}[\PfCMentaloDeuxiemeTerme]\num{\PfCMentaloDeuxiemeTerme}}{}%
+ \IfSubStr{\PfCMentaloListeOperations[##1]}{/}{\StrBehind{\PfCMentaloListeOperations[##1]}{/}[\PfCMentaloDeuxiemeTerme]\num{\PfCMentaloDeuxiemeTerme}}{}%
}%
- }&\\
- }%
- \Block[draw,fill=gray!15]{1-\fpeval{2*\PfCMentaloEtages+5}}{Départ}\xintFor* ##2 in{\xintSeq{1}{\fpeval{2*\PfCMentaloEtages+5}}}\do{&}\\%
- \CodeAfter
- \tikz\draw[dashed] (1-|\fpeval{5+5+2+2*\PfCMentaloEtages-2})--(last-|\fpeval{5+5+2+2*\PfCMentaloEtages-2});
- \end{NiceTabular}
+ &\Block[borders={top,bottom}]{1-1}{$=$}&\Block[borders={top,bottom}]{1-1}{\pointilles[20pt]}&%
+ \Block[borders={top,right,bottom}]{1-\fpeval{##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{##1}}}\do{&}%
+ \Block{1-\fpeval{\PfCMentaloEtages-##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages-##1}}}\do{&}%
+ &&&&\Block{1-2}{%
+ \num{\fpeval{\PfCMentaloListeOperations[##1]}}%
+ }&\\
+ }%
+ \Block[draw,fill=gray!15]{1-\fpeval{2*\PfCMentaloEtages+5}}{Départ}\xintFor* ##2 in{\xintSeq{1}{\fpeval{2*\PfCMentaloEtages+5}}}\do{&}\\%
+ \CodeAfter
+ \tikz\draw[dashed] (1-|\fpeval{5+5+2+2*\PfCMentaloEtages-2})--(last-|\fpeval{5+5+2+2*\PfCMentaloEtages-2});
+ \end{NiceTabular}
+ }{%
+ \xdef\PfCMentaloEtages{\fpeval{\useKV[Mentalo]{Questions}+1}}
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\PfCMentaloListeOperations{#2}%
+ \reademptyitems%
+ \setlength{\tabcolsep}{0.25\tabcolsep}
+ \renewcommand{\arraystretch}{1.5}
+ \begin{NiceTabular}{*{\fpeval{\PfCMentaloEtages}}{m{5pt}}m{20pt}cm{20pt}cl*{\fpeval{\PfCMentaloEtages}}{m{5pt}}*{5}{m{15pt}}*{1}{m{10pt}}}
+ \Block{1-\fpeval{\PfCMentaloEtages}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages}}}\do{&}%
+ \Block[draw,fill=gray!15]{1-5}{Arrivée}&&&&&\Block{1-\fpeval{\PfCMentaloEtages}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages}}}\do{&}\\
+ \xintFor* ##1 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages-1}}}\do{%
+ \Block{1-\fpeval{\PfCMentaloEtages-##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages-##1}}}\do{&}%
+ \Block[borders={top,left,bottom}]{1-\fpeval{##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{##1}}}\do{&}%
+ \Block[borders={top,bottom}]{1-1}{%
+ \xdef\PfCMentaloPremierTerme{\fpeval{randint(\useKV[Mentalo]{ValeurMin},\useKV[Mentalo]{ValeurMax})}}%
+ \num{\PfCMentaloPremierTerme}}&\Block[borders={top,bottom}]{1-1}{%
+ \xintifboolexpr{\PfCMentaloListeOperationslen==1}{%
+ \StrSubstitute{\PfCMentaloListeOperations[1]}{*}{\times}[\PfCCBAffiche]$\PfCCBAffiche$%
+ }{%
+ \StrSubstitute{\PfCMentaloListeOperations[##1]}{*}{\times}[\PfCCBAffiche]$\PfCCBAffiche$%
+ }%
+ }&%
+ \Block[borders={top,bottom}]{1-1}{\xdef\PfCMentaloDeuxiemeTerme{\fpeval{randint(\useKV[Mentalo]{ValeurMin},\useKV[Mentalo]{ValeurMax})}}%
+ \PfCNum{\PfCMentaloDeuxiemeTerme}}&\Block[borders={top,bottom}]{1-1}{$=$}&\Block[borders={top,bottom}]{1-1}{\pointilles[20pt]}&%
+ \Block[borders={top,right,bottom}]{1-\fpeval{##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{##1}}}\do{&}%
+ \Block{1-\fpeval{\PfCMentaloEtages-##1}}{~}\xintFor* ##2 in{\xintSeq{1}{\fpeval{\PfCMentaloEtages-##1}}}\do{&}%
+ &&&&\Block{1-2}{%
+ \xintifboolexpr{\PfCMentaloListeOperationslen==1}{%
+ \num{\fpeval{\PfCMentaloPremierTerme\PfCMentaloListeOperations[1]\PfCMentaloDeuxiemeTerme}}
+ }{%
+ \num{\fpeval{\PfCMentaloPremierTerme\PfCMentaloListeOperations[##1]\PfCMentaloDeuxiemeTerme}}
+ }%
+ }&\\
+ }%
+ \Block[draw,fill=gray!15]{1-\fpeval{2*\PfCMentaloEtages+5}}{Départ}\xintFor* ##2 in{\xintSeq{1}{\fpeval{2*\PfCMentaloEtages+5}}}\do{&}\\%
+ \CodeAfter
+ \tikz\draw[dashed] (1-|\fpeval{5+5+2+2*\PfCMentaloEtages-2})--(last-|\fpeval{5+5+2+2*\PfCMentaloEtages-2});
+ \end{NiceTabular}
+ }%
}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/ProfCollege.sty b/Master/texmf-dist/tex/latex/profcollege/ProfCollege.sty
index de1b3c5da0c..a7af54cbf83 100644
--- a/Master/texmf-dist/tex/latex/profcollege/ProfCollege.sty
+++ b/Master/texmf-dist/tex/latex/profcollege/ProfCollege.sty
@@ -2,9 +2,9 @@
% licence : Released under the LaTeX Project Public License v1.3c
% or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}%
-\def\filedate{2023/08/15}%
+\def\filedate{2023/08/16}%
\let\PfCfiledate\filedate%
-\def\fileversion{0.99-z-r}%
+\def\fileversion{0.99-z-s}%
\let\PfCfileversion\fileversion%
\ProvidesPackage{ProfCollege}[\filedate\space v\fileversion\space Aide pour utiliser LaTeX au college]%
@@ -573,6 +573,7 @@
}%\emoticon
}%\raisebox
}%
+\input{PfCDefiCalc}
\input{PfCMulArt}
\input{PfCGrimuku}
\input{PfCHorloge}