diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex')
-rw-r--r-- | Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex | 226 |
1 files changed, 225 insertions, 1 deletions
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex b/Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex index d26dbade32c..347ca499bcf 100644 --- a/Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex +++ b/Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex @@ -105,7 +105,7 @@ transform canvas={xshift=0em,yshift=0em}},rectangle,fill=PfCSolOp,rounded corner \fi \opmul[decimalsepsymbol={,},lineheight=2em,columnwidth=1.5em,voperator=bottom,intermediarystyle=\stepcounter{divxlop}\color{PfCSolOp}\PfCchiffre{A\thedivxlop},resultstyle=\stepcounter{divxlop}\color{PfCSolOp}\PfCchiffre{A\thedivxlop},resultstyle.d=\color{PfCCouleurVirgule}]{#2}{#3}% \foreach \i in {1,...,\thedivxlop}{% - \PfCentoure{A\i}{A\i}% + \PfCentoure{A\i}{A\i}% }% \endgroup } @@ -168,4 +168,228 @@ transform canvas={xshift=0em,yshift=0em}},rectangle,fill=PfCSolOp,rounded corner \foreach \i in {1,...,\thedivxlop}{% \PfCentoure{A\i}{A\i}% }% +}% + +%%%%%%%%%%%%%%%%%%%%% Colorees %%%%%%%%%%%%%%%%%%% +% Merci JCC +%%% Seule ligne à modifier selon la convenance %%% +\newcommand\couleurs{blue,red,green,blue,red,green,blue,red,green,blue,red,green}% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\newcount\numint% +\newcount\indint% +\newcount\ind% +\def\nnil{\nil}% +\def\ExtraitCouleurs{% + \ind=0% + \expandafter\ExtraitCouleursAux\couleurs,\nil,% +}% +\def\ExtraitCouleursAux#1,{% + \def\arg{#1}% + \ifx\arg\nnil% + \edef\cmax{\the\ind}% + \else% + \def\couleur{#1}% + \stepcounter{coulxlop}% + \stepcounter{coulxlopa}% + \stepcounter{coulxlopd}% + \expandafter\edef\csname PfCOpCouleurs\Roman{coulxlop}\endcsname{\couleur}% + \expandafter\edef + \csname op@operandstyle.1.\the\numexpr\ind+1\endcsname{% + \noexpand\PfCchiffre{CA\thecoulxlop}% + }% + \expandafter\edef + \csname op@operandstyle.2.\the\numexpr\ind+1\endcsname{% + \noexpand\PfCchiffre{CB\thecoulxlopa}% + }% + \expandafter\edef + \csname op@resultstyle.\the\numexpr\ind+1\endcsname{% + \noexpand\PfCchiffre{CC\thecoulxlopd}% + }% + \numint = \numexpr\ind+1 + \indint = 1 + \ConstruitIntermediaire + \advance\ind by 1 + \expandafter\ExtraitCouleursAux + \fi +} +\def\ConstruitIntermediaire{% + \ifnum\numint>0 + \stepcounter{coulxlopi}% + \expandafter\edef\csname PfCOpCouleursi\Roman{coulxlopi}\endcsname{\couleur}% + \expandafter\edef + \csname op@intermediarystyle.\the\numint.\the\indint\endcsname{% + \noexpand\PfCchiffre{CD\thecoulxlopi}% + }% + \advance\indint by 1 + \advance\numint by -1 + \expandafter\ConstruitIntermediaire + \fi + } + \def\ConstruitRemainder{% + \ifnum\numint>0 + \stepcounter{coulxlopidiv}% + \expandafter\edef\csname PfCOpCouleursid\Roman{coulxlopidiv}\endcsname{\couleur}% + \expandafter\edef + \csname op@remainderystyle.\the\numint.\the\indint\endcsname{% + \noexpand\PfCchiffre{CE\thecoulxlopidiv}% + }% + \advance\indint by 1 + \advance\numint by -1 + \expandafter\ConstruitRemainder + \fi + } + +\newcounter{coulxlop}% +\newcounter{coulxlopi}% +\newcounter{coulxlopa}% +\newcounter{coulxlopd}% +\newcounter{coulxlopidiv}% +\newcounter{coulxlopcoul}% + +\newcommand\PfCentoureColor[2]{% + \expandafter\edef\csname RetiensCouleur\endcsname{\csname PfCOpCouleurs\Roman{coulxlopcoul}\endcsname}\colorlet{CouleurCadre}{\RetiensCouleur}% + \tikz[remember picture,overlay] \node[preaction={draw={CouleurCadre},ultra thick,opacity=1, + transform canvas={xshift=0em,yshift=0em}},rectangle,rounded corners,ultra thick,inner sep=.55em,fit=(#1.center)(#2.center)]{};} + +\newcommand\PfCentoureColorR[3]{% + \expandafter\edef\csname RetiensCouleur\endcsname{\csname PfCOpCouleurs\Roman{coulxlopcoul}\endcsname}\colorlet{CouleurCadre}{\RetiensCouleur}% + \tikz[remember picture,overlay] \node[preaction={draw={CouleurCadre},ultra thick,opacity=1, + transform canvas={xshift=0em,yshift=0em}},rectangle,fill=PfCSolOp,rounded corners,ultra thick,inner sep=.55em,fit=(#1.center)(#2.center)]{};} + +\newcommand\PfCentoureColorI[2]{% + \expandafter\edef\csname RetiensCouleur\endcsname{\csname PfCOpCouleursi\Roman{coulxlopcoul}\endcsname}\colorlet{CouleurCadre}{\RetiensCouleur}% + \tikz[remember picture,overlay] \node[preaction={draw={CouleurCadre},ultra thick,opacity=1, + transform canvas={xshift=0em,yshift=0em}},rectangle,rounded corners,ultra thick,inner sep=.55em,fit=(#1.center)(#2.center)]{};} + +\newcommand\PfCentoureColorIR[2]{% + \expandafter\edef\csname RetiensCouleur\endcsname{\csname PfCOpCouleursi\Roman{coulxlopcoul}\endcsname}\colorlet{CouleurCadre}{\RetiensCouleur}% + \tikz[remember picture,overlay] \node[preaction={draw={CouleurCadre},ultra thick,opacity=1, + transform canvas={xshift=0em,yshift=0em}},rectangle,fill=PfCSolOp,rounded corners,ultra thick,inner sep=.55em,fit=(#1.center)(#2.center)]{};} + +\newcommand\PfCentoureColorIdiv[2]{% + \expandafter\edef\csname RetiensCouleur\endcsname{\csname PfCOpCouleursid\Roman{coulxlopcoul}\endcsname}\colorlet{CouleurCadre}{\RetiensCouleur}% + \tikz[remember picture,overlay] \node[preaction={draw={CouleurCadre},ultra thick,opacity=1, +transform canvas={xshift=0em,yshift=0em}},rectangle,rounded corners,ultra thick,inner sep=.55em,fit=(#1.center)(#2.center)]{};} + +\makeatletter +\long\def\ifnodedefined#1#2#3{% + \@ifundefined{pgf@sh@ns@#1}{#3}{#2}% +} +\makeatother + +\NewDocumentCommand\MultiplicationColore{omm}{% + \useKVdefault[ClesOperations]% + \setKV[ClesOperations]{#1}% + \setcounter{coulxlop}{0}% + \setcounter{coulxlopa}{0}% + \setcounter{coulxlopd}{0}% + \setcounter{coulxlopi}{0}% + \setcounter{coulxlopcoul}{0}% + \ifboolKV[ClesOperations]{Solution}{\colorlet{PfCSolOp}{\useKV[ClesOperations]{CouleurSolution}}}{\colorlet{PfCSolOp}{\useKV[ClesOperations]{CouleurFond}}}% + \ExtraitCouleurs% + \begingroup% + \setlength{\baselineskip}{1.75em}% + \StrLen{#3}[\PfCLongueurFacteurDeux]% + \ifnum\PfCLongueurFacteurDeux=1\relax% + \opset{lineheight=\baselineskip} % nécessaire + \else% + \opset{lineheight=\baselineskip,displayintermediary=all,displayshiftintermediary=all} % nécessaire + \fi% + \opmul[decimalsepsymbol={,},lineheight=1.75em,columnwidth=1.5em,voperator=bottom]{#2}{#3}% + \endgroup% + \foreach \i in {1,...,\thecoulxlop}{% + \stepcounter{coulxlopcoul}% + \ifnodedefined{CA\i}{% + \PfCentoureColor{CA\i}{CA\i}% + }{} + }% + \setcounter{coulxlopcoul}{0}% + \foreach \i in {1,...,\thecoulxlopa}{% + \stepcounter{coulxlopcoul}% + \ifnodedefined{CB\i}{% + \PfCentoureColor{CB\i}{CB\i}% + }{} + }% + \setcounter{coulxlopcoul}{0}% + \foreach \i in {1,...,\thecoulxlopd}{% + \stepcounter{coulxlopcoul}% + \ifnodedefined{CC\i}{% + \ifboolKV[ClesOperations]{Solution}{\PfCentoureColor{CC\i}{CC\i}}{\PfCentoureColorR{CC\i}{CC\i}}% + }{} + }% + \setcounter{coulxlopcoul}{0}% + \foreach \i in {1,...,\thecoulxlopi}{% + \stepcounter{coulxlopcoul}% +% La couleur est + \ifnodedefined{CD\i}{% + \ifboolKV[ClesOperations]{Solution}{\PfCentoureColorI{CD\i}{CD\i}}{\PfCentoureColorIR{CD\i}{CD\i}}% + }{}% + }% +}% + +\newcommand\AdditionColore[3][]{% + \useKVdefault[ClesOperations]% + \setKV[ClesOperations]{#1}% + \ifboolKV[ClesOperations]{Solution}{\colorlet{PfCSolOp}{\useKV[ClesOperations]{CouleurSolution}}}{\colorlet{PfCSolOp}{\useKV[ClesOperations]{CouleurFond}}}% + \setcounter{coulxlop}{0}% + \setcounter{coulxlopa}{0}% + \setcounter{coulxlopd}{0}% + \setcounter{coulxlopi}{0}% + \setcounter{coulxlopcoul}{0}% + \ExtraitCouleurs% + \opadd[decimalsepsymbol={,},lineheight=1.75em,columnwidth=1.5em,voperator=bottom]{#2}{#3}% + \foreach \i in {1,...,\thecoulxlop}{% + \stepcounter{coulxlopcoul}% + \ifnodedefined{CA\i}{% + \PfCentoureColor{CA\i}{CA\i}% + }{}% + }% + \setcounter{coulxlopcoul}{0}% + \foreach \i in {1,...,\thecoulxlopa}{% + \stepcounter{coulxlopcoul}% + \ifnodedefined{CB\i}{% + \PfCentoureColor{CB\i}{CB\i}% + }{}% + }% + \setcounter{coulxlopcoul}{0}% + \foreach \i in {1,...,\thecoulxlopd}{% + \stepcounter{coulxlopcoul}% + \ifnodedefined{CC\i}{% + \ifboolKV[ClesOperations]{Solution}{\PfCentoureColor{CC\i}{CC\i}}{\PfCentoureColorR{CC\i}{CC\i}}% + }{}% + }% +}% + +\newcommand\SoustractionColore[3][]{% + \useKVdefault[ClesOperations]% + \setKV[ClesOperations]{#1}% + \ifboolKV[ClesOperations]{Solution}{\colorlet{PfCSolOp}{\useKV[ClesOperations]{CouleurSolution}}}{\colorlet{PfCSolOp}{\useKV[ClesOperations]{CouleurFond}}}% + \setcounter{coulxlop}{0}% + \setcounter{coulxlopa}{0}% + \setcounter{coulxlopd}{0}% + \setcounter{coulxlopi}{0}% + \setcounter{coulxlopcoul}{0}% + \ExtraitCouleurs% + \opsub[decimalsepsymbol={,},lineheight=1.75em,columnwidth=1.5em,voperator=bottom]{#2}{#3}% +\foreach \i in {1,...,\thecoulxlop}{% + \stepcounter{coulxlopcoul}% + \ifnodedefined{CA\i}{% + \PfCentoureColor{CA\i}{CA\i}% + }{} + }% + \setcounter{coulxlopcoul}{0}% + \foreach \i in {1,...,\thecoulxlopa}{% + \stepcounter{coulxlopcoul}% + \ifnodedefined{CB\i}{% + \PfCentoureColor{CB\i}{CB\i}% + }{} + }% + \setcounter{coulxlopcoul}{0}% + \foreach \i in {1,...,\thecoulxlopd}{% + \stepcounter{coulxlopcoul}% + \ifnodedefined{CC\i}{% + \ifboolKV[ClesOperations]{Solution}{\PfCentoureColor{CC\i}{CC\i}}{\PfCentoureColorR{CC\i}{CC\i}}% + }{} + }% }%
\ No newline at end of file |