summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/profcollege/latex/ProfCollege.sty
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-06-06 03:02:43 +0000
committerNorbert Preining <norbert@preining.info>2021-06-06 03:02:43 +0000
commit4338972cc175be565a3441c4ae8a6aa0dfcbe9f9 (patch)
tree9ec52a5d0d9c8a00b1a6801cc82248c0c008465d /macros/latex/contrib/profcollege/latex/ProfCollege.sty
parent4e703bdd2f304028698cd4ab92b0dda0b95a95a8 (diff)
CTAN sync 202106060302
Diffstat (limited to 'macros/latex/contrib/profcollege/latex/ProfCollege.sty')
-rw-r--r--macros/latex/contrib/profcollege/latex/ProfCollege.sty1132
1 files changed, 801 insertions, 331 deletions
diff --git a/macros/latex/contrib/profcollege/latex/ProfCollege.sty b/macros/latex/contrib/profcollege/latex/ProfCollege.sty
index 563ce3af32..e32797a1cf 100644
--- a/macros/latex/contrib/profcollege/latex/ProfCollege.sty
+++ b/macros/latex/contrib/profcollege/latex/ProfCollege.sty
@@ -3,7 +3,7 @@
% or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{ProfCollege}[2021/05/15 v0.99-b Aide pour l'utilisation de LaTeX au collège]
+\ProvidesPackage{ProfCollege}[2021/06/04 v0.99-d Aide pour l'utilisation de LaTeX au collège]
\RequirePackage{verbatim}
@@ -16,7 +16,7 @@
locale=FR,
detect-all,%
output-decimal-marker={,},%
- group-four-digits%
+ group-minimum-digits=4%
}
\DeclareSIUnit{\kmh}{\km\per\hour}
@@ -29,7 +29,7 @@
\DeclareSIUnit{\jour}{j}
\DeclareSIUnit{\quintal}{q}
\DeclareSIUnit{\octet}{o}
-\DeclareSIUnit{\fahrenheit}{\degree F}
+\DeclareSIUnit{\fahrenheit}{\text{\textdegree}F}
\DeclareSIUnit{\EuRo}{€}
\RequirePackage[table,svgnames]{xcolor}%Gestion des couleurs
@@ -139,7 +139,7 @@
%encadrer avec des "sommets arrondis"
\newsavebox{\logobox}
-\newcommand{\Logo}[2]{%
+\newcommand\Logo[2]{%
\setbox1=\hbox{\includegraphics[scale=#2]{#1}}
\begin{tikzpicture}%
\clip[rounded corners=5mm] (0,0) rectangle (\wd1,\ht1);
@@ -486,7 +486,7 @@
%%%
% Labyrinthe
%%%
-\setKVdefault[Labyrinthe]{Lignes=6,Colonnes=3,Longueur=4,Hauteur=2,Passages=false,EcartH=1,EcartV=1,CouleurF=gray!50,Texte=\color{black},SensImpose=false,Slop}
+\setKVdefault[Labyrinthe]{Lignes=6,Colonnes=3,Longueur=4,Hauteur=2,Passages=false,EcartH=1,EcartV=1,CouleurF=gray!50,Texte=\color{yellow},SensImpose=false,Slop}
\tikzset{FDirect/.style={-stealth}}
\tikzset{FIndirect/.style={stealth-}}
@@ -510,10 +510,10 @@
\xdef\TotalLaby{\fpeval{3*\useKV[Labyrinthe]{Colonnes}-2}}%
}%
\xdef\CouleurF{\useKV[Labyrinthe]{CouleurF}}%
- \xdef\MotifTexte{\useKV[Labyrinthe]{Texte}}%
- \xintifboolexpr{\ListeLabylen=\fpeval{\useKV[Labyrinthe]{Lignes}*\useKV[Labyrinthe]{Colonnes}}}{%
+ \xdef\MotifTexte{\noexpand\useKV[Labyrinthe]{Texte}}%
+ \xintifboolexpr{\ListeLabylen==\fpeval{\useKV[Labyrinthe]{Lignes}*\useKV[Labyrinthe]{Colonnes}}}{%
\begin{tikzpicture}[remember picture]%
- % on dessine les cadres
+% % on dessine les cadres
\foreach \compteurv in {1,...,\useKV[Labyrinthe]{Lignes}}{%
\foreach \compteurh in {1,...,\useKV[Labyrinthe]{Colonnes}}{%
\xdef\ColorFill{\ListeLaby[\fpeval{\useKV[Labyrinthe]{Colonnes}*(\compteurv-1)+\compteurh},2]}%
@@ -529,19 +529,19 @@
\foreach \compteurh in {1,...,\useKV[Labyrinthe]{Colonnes}}{%
\ifboolKV[Labyrinthe]{Passages}{%
\xdef\NomNode{\noexpand\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)},1]}%
- \xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)},2]>0}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)},2]=1}{\xdef\NomStyle{FDirect}}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)},2]=2}{\xdef\NomStyle{FIndirect}}{\xdef\NomStyle{FBidirect}}}%
+ \xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)},2]>0}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)},2]==1}{\xdef\NomStyle{FDirect}}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+3*(\compteurh-1)},2]==2}{\xdef\NomStyle{FIndirect}}{\xdef\NomStyle{FBidirect}}}%
\draw[\CouleurF,line width=3pt,\NomStyle] (A-\compteurh-\compteurv) -- node[fill=white,midway,inner sep=2pt]{\MotifTexte\NomNode}(A-\compteurh-\fpeval{\compteurv+1});}{}%
}{%
\draw[\CouleurF,line width=3pt,FBidirect] (A-\compteurh-\compteurv) -- (A-\compteurh-\fpeval{\compteurv+1});%
}%
}%
}%
- % horizontales
+% % horizontales
\foreach \compteurv in {1,...,\useKV[Labyrinthe]{Lignes}}{%
\foreach \compteurh in {1,...,\fpeval{\useKV[Labyrinthe]{Colonnes}-1}}{%
\ifboolKV[Labyrinthe]{Passages}{%
\xdef\NomNode{\noexpand\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\compteurh},1]}%
- \xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\compteurh},2]>0}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\compteurh},2]=1}{\xdef\NomStyle{FDirect}}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\compteurh},2]=2}{\xdef\NomStyle{FIndirect}}{\xdef\NomStyle{FBidirect}}}%
+ \xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\compteurh},2]>0}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\compteurh},2]==1}{\xdef\NomStyle{FDirect}}{\xintifboolexpr{\ListeLabySol[\fpeval{\TotalLaby*(\compteurv-1)+\compteurh},2]==2}{\xdef\NomStyle{FIndirect}}{\xdef\NomStyle{FBidirect}}}%
\draw[\CouleurF,line width=3pt,\NomStyle](A-\compteurh-\compteurv) -- node[fill=white,midway,\LabySlop,inner sep=2pt]{\MotifTexte\NomNode}(A-\fpeval{\compteurh+1}-\compteurv);}{}
}{%
\draw[\CouleurF,line width=3pt,FBidirect](A-\compteurh-\compteurv) -- (A-\fpeval{\compteurh+1}-\compteurv);%
@@ -553,7 +553,7 @@
\foreach \compteurh in {1,...,\fpeval{\useKV[Labyrinthe]{Colonnes}-1}}{%
\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}}}%
+ \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});
}{}
}{%
@@ -561,18 +561,17 @@
}%
}%
}%
-% % diagonales directes
+%% % diagonales directes
\foreach \compteurv in {1,...,\fpeval{\useKV[Labyrinthe]{Lignes}-1}}{%
\foreach \compteurh in {1,...,\fpeval{\useKV[Labyrinthe]{Colonnes}-1}}{%
\ifboolKV[Labyrinthe]{Passages}{%
\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}}}
+ \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,FBidirect] (A-\compteurh-\compteurv) -- node[fill=white,near start,\LabySlop]{\MotifTexte\NomNode}(A-\fpeval{\compteurh+1}-\fpeval{\compteurv+1});
-% }{}%
}%
}%
}%
@@ -590,7 +589,7 @@
\foreach \compteurv in {1,...,\useKV[Labyrinthe]{Lignes}}{%
\foreach \compteurh in {1,...,\fpeval{\useKV[Labyrinthe]{Colonnes}-1}}{%
\ifboolKV[Labyrinthe]{Passages}{%
- \xdef\NomNode{\ListeLabySol[1,\fpeval{\TotalLaby*(\compteurv-1)+\compteurh}]}%
+ \xdef\NomNode{\noexpand\ListeLabySol[1,\fpeval{\TotalLaby*(\compteurv-1)+\compteurh}]}%
\draw[\CouleurF,line width=3pt,stealth-stealth]
(A-\compteurh-\compteurv) -- node[fill=white,midway]{\MotifTexte\NomNode}(A-\fpeval{\compteurh+1}-\compteurv);
}{%
@@ -607,18 +606,19 @@
\foreach \compteurv in {1,...,\fpeval{\useKV[Labyrinthe]{Lignes}-1}}{%
\foreach \compteurh in {1,...,\fpeval{\useKV[Labyrinthe]{Colonnes}-1}}{%
\ifboolKV[Labyrinthe]{Passages}{%
- \xdef\NomNode{\ListeLabySol[1,\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+2*(\compteurh-1)+1}]}%
+ \xdef\NomNode{\noexpand\ListeLabySol[1,\fpeval{\TotalLaby*(\compteurv-1)+\useKV[Labyrinthe]{Colonnes}+2*(\compteurh-1)+1}]}%
\draw[\CouleurF,line width=3pt,stealth-stealth] (A-\compteurh-\compteurv) -- node[fill=white,midway]{\MotifTexte\NomNode}(A-\fpeval{\compteurh+1}-\fpeval{\compteurv+1});
}{%
\draw[\CouleurF,line width=3pt,stealth-stealth] (A-\compteurh-\compteurv) -- (A-\fpeval{\compteurh+1}-\fpeval{\compteurv+1});
}%
}%
}%
- % fin des fl\`eches
+% % fin des fl\`eches
}
- \end{tikzpicture}
- }{\textbf{! Le nombre d'informations n'est pas compatible avec les
- d\'efinitions de {\ttfamily Colonnes} et {\ttfamily Lignes} !}}%
+ \end{tikzpicture}
+ }{
+ \textbf{! Le nombre d'informations n'est pas compatible avec les
+ d\'efinitions de {\ttfamily Colonnes} et {\ttfamily Lignes} !}}%
}
%%%
@@ -758,7 +758,7 @@
}{%
\setsepchar[*]{,*/}%
\readlist\ListeCalc{#2}%
- \foreachitem\compteur\in\ListeCalc{\xintifboolexpr{\listlen\ListeCalc[\compteurcnt]=2}{\Longstack{{\tiny\ListeCalc[\compteurcnt,1]} \KN{\ListeCalc[\compteurcnt,2]}}}{\Longstack{{\tiny\ListeCalc[\compteurcnt,2]} \KY{\ListeCalc[\compteurcnt,3]}}}%
+ \foreachitem\compteur\in\ListeCalc{\xintifboolexpr{\listlen\ListeCalc[\compteurcnt]==2}{\Longstack{{\tiny\ListeCalc[\compteurcnt,1]} \KN{\ListeCalc[\compteurcnt,2]}}}{\Longstack{{\tiny\ListeCalc[\compteurcnt,2]} \KY{\ListeCalc[\compteurcnt,3]}}}%
}%
}%
\setstackgap{L}{\baselineskip}%
@@ -991,11 +991,11 @@
\begin{tikzpicture}%
\begin{scope}[start chain=transition going right,node distance=-\pgflinewidth]%
\foreach \s in {1,...,\ListeFlashlen}{%
- \xintifboolexpr{\s = 1}{%
+ \xintifboolexpr{\s == 1}{%
\node[arrow,on chain] {\Huge\bfseries\ListeFlash[\s]};%
\ifboolKV[ClesFlash]{Pause}{\pause}{}%
}{%
- \xintifboolexpr{\s = \ListeFlashlen}{%
+ \xintifboolexpr{\s == \ListeFlashlen}{%
\node[arrow,on chain] {\Huge\bfseries?};%
}{%
\node[arrow,on chain] {\ListeFlash[\s]};%
@@ -2428,10 +2428,10 @@
%%%
% QCM
%%%
-\setKVdefault[ClesQCM]{Reponses=3,Solution=false,Stretch=1,Largeur=2cm,Couleur=gray!15,Titre=false,Nom=R\'eponse,NomV=Vrai,NomF=Faux,Alph=false,AlphT=false,VF=false,Depart=1,Alterne=false,Noms={A/B/C},Multiple=false}
-\newlength{\LargeurQCM}
-\newcounter{QuestionQCM}
-\newcounter{TitreQCM}
+\setKVdefault[ClesQCM]{Reponses=3,Solution=false,Stretch=1,Largeur=2cm,Couleur=gray!15,Titre=false,Nom=R\'eponse,NomV=Vrai,NomF=Faux,Alph=false,AlphT=false,VF=false,Depart=1,Alterne=false,Noms={A/B/C},Multiple=false}%
+\newlength{\LargeurQCM}%
+\newcounter{QuestionQCM}%
+\newcounter{TitreQCM}%
\newcommand\QCM[2][]{%
\useKVdefault[ClesQCM]%
\setKV[ClesQCM]{#1}%
@@ -2454,7 +2454,7 @@
\hline%
\xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
\stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{\ListeQCM[##1,\fpeval{##2+1}]=1}{$\boxtimes$}{$\square$}}{$\square$}%
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{\ListeQCM[##1,\fpeval{##2+1}]==1}{$\boxtimes$}{$\square$}}{$\square$}%
}\\
}%
\hline%
@@ -2471,7 +2471,7 @@
\hline%
\xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
\stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{##2=\ListeQCM[##1,2]}{$\boxtimes$}{$\square$}}{$\square$}%
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{##2==\ListeQCM[##1,2]}{$\boxtimes$}{$\square$}}{$\square$}%
}\\
}%
\hline%
@@ -2489,7 +2489,7 @@
\hline%
\xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
\stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xdef\NumeroReponse{\fpeval{\useKV[ClesQCM]{Reponses}+2}}\xintifboolexpr{##2=\ListeQCM[##1,\NumeroReponse]}{\cellcolor{\useKV[ClesQCM]{Couleur}}}{}}{}\ListeQCM[##1,##2+1]%
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xdef\NumeroReponse{\fpeval{\useKV[ClesQCM]{Reponses}+2}}\xintifboolexpr{##2==\ListeQCM[##1,\NumeroReponse]}{\cellcolor{\useKV[ClesQCM]{Couleur}}}{}}{}\ListeQCM[##1,##2+1]%
}\\
}%
\hline%
@@ -2498,7 +2498,7 @@
}%
}
-\newcommand\QCMVar[2][]{%
+\newcommand\QCMPfC[2][]{%
\useKVdefault[ClesQCM]%
\setKV[ClesQCM]{#1}%
\setcounter{QuestionQCM}{\fpeval{\useKV[ClesQCM]{Depart}-1}}%
@@ -2520,7 +2520,7 @@
\hline%
\xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
\stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{\ListeQCM[##1,\fpeval{##2+1}]=1}{$\boxtimes$}{$\square$}}{$\square$}%
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{\ListeQCM[##1,\fpeval{##2+1}]==1}{$\boxtimes$}{$\square$}}{$\square$}%
}\\
}%
\hline%
@@ -2537,7 +2537,7 @@
\hline%
\xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
\stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{##2=\ListeQCM[##1,2]}{$\boxtimes$}{$\square$}}{$\square$}%
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{##2==\ListeQCM[##1,2]}{$\boxtimes$}{$\square$}}{$\square$}%
}\\
}%
\hline%
@@ -2555,7 +2555,7 @@
\hline%
\xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
\stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xdef\NumeroReponse{\fpeval{\useKV[ClesQCM]{Reponses}+2}}\xintifboolexpr{##2=\ListeQCM[##1,\NumeroReponse]}{\cellcolor{\useKV[ClesQCM]{Couleur}}}{}}{}\ListeQCM[##1,##2+1]%
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xdef\NumeroReponse{\fpeval{\useKV[ClesQCM]{Reponses}+2}}\xintifboolexpr{##2==\ListeQCM[##1,\NumeroReponse]}{\cellcolor{\useKV[ClesQCM]{Couleur}}}{}}{}\ListeQCM[##1,##2+1]%
}\\
}%
\hline%
@@ -3106,7 +3106,7 @@
\ifboolKV[ClesPythagore]{Perso}{\RedactionPythagore}{\ifboolKV[ClesPythagore]{Egalite}{Comme le triangle $#2$ est rectangle en $\NomB$, alors l'\'egalit\'e de Pythagore est v\'erifi\'ee :}{Dans le triangle $#2$ rectangle en $\NomB$, le th\'eor\`eme de Pythagore permet d'\'ecrire :%
}%
}%
- \xintifboolexpr{#3<#4 || #3=#4}{%\ifnum#3<#4%
+ \xintifboolexpr{#3<#4 || #3==#4}{%\ifnum#3<#4%
\xdef\ResultatPytha{\fpeval{round(sqrt(#3^2+#4^2),\useKV[ClesPythagore]{Precision})}}%
\xdef\ResultatPytha{\fpeval{round(sqrt(#3^2+#4^2),\useKV[ClesPythagore]{Precision})}}%
\begin{align*}
@@ -3138,7 +3138,7 @@
% On d\'emarre la r\'esolution
\ifboolKV[ClesPythagore]{Perso}{\RedactionPythagore}{\ifboolKV[ClesPythagore]{Egalite}{Comme le triangle $#2$ est rectangle en $\NomB$, alors l'\'egalit\'e de Pythagore est v\'erifi\'ee :}{Dans le triangle $#2$ rectangle en $\NomB$, le th\'eor\`eme de Pythagore permet d'\'ecrire :%
}}%
- \xintifboolexpr{#3<#4 || #3=#4}{%\ifnum#3<#4%
+ \xintifboolexpr{#3<#4 || #3==#4}{%\ifnum#3<#4%
\xdef\ResultatPytha{\fpeval{round(sqrt(#3^2+#4^2),\useKV[ClesPythagore]{Precision})}}%
\begin{align*}
\NomA\NomC^2&=\NomA\NomB^2+\NomB\NomC^2\\
@@ -3548,14 +3548,14 @@
\def\LETTRE{\useKV[ClesDistributivite]{Lettre}}%
\ensuremath{%
% partie du x^2
- \xintifboolexpr{#2=0}{}{\xintifboolexpr{#2=1}{}{\xintifboolexpr{#2=-1}{-}{\num{#2}}}\LETTRE^2}%
+ \xintifboolexpr{#2==0}{}{\xintifboolexpr{#2==1}{}{\xintifboolexpr{#2==-1}{-}{\num{#2}}}\LETTRE^2}%
% partie du x
- \xintifboolexpr{#3=0}{}{\xintifboolexpr{#3>0}{\xintifboolexpr{#2=0}{}{+}\xintifboolexpr{#3=1}{}{\num{#3}}}{%
- \xintifboolexpr{#2=0}{\xintifboolexpr{#3=-1}{-}{\num{#3}}}{\xintifboolexpr{#3=-1}{-}{-\num{\fpeval{abs(#3)}}}}%
+ \xintifboolexpr{#3==0}{}{\xintifboolexpr{#3>0}{\xintifboolexpr{#2==0}{}{+}\xintifboolexpr{#3==1}{}{\num{#3}}}{%
+ \xintifboolexpr{#2==0}{\xintifboolexpr{#3==-1}{-}{\num{#3}}}{\xintifboolexpr{#3==-1}{-}{-\num{\fpeval{abs(#3)}}}}%
}\LETTRE}%
% partie du nombre
- \xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{\xintifboolexpr{#2=0}{\xintifboolexpr{#3=0}{}{+}}{+}\num{#4}}{%
- \xintifboolexpr{#2=0}{\xintifboolexpr{#3=0}{\num{#4}}{-\num{\fpeval{abs(#4)}}}}{-\num{\fpeval{abs(#4)}}}}}%
+ \xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{\xintifboolexpr{#2==0}{\xintifboolexpr{#3==0}{}{+}}{+}\num{#4}}{%
+ \xintifboolexpr{#2==0}{\xintifboolexpr{#3==0}{\num{#4}}{-\num{\fpeval{abs(#4)}}}}{-\num{\fpeval{abs(#4)}}}}}%
%
}%
}%
@@ -3582,11 +3582,11 @@
\DistriEchange[#1]{#2}{#3}{#4}{#5}%
}{%
\ifboolKV[ClesDistributivite]{Remarquable}{%
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=1}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==1}{%
\ifx\bla#4\bla(\Affichage{0}{#2}{#3})^2\else(\Affichage{0}{#2}{#3})(\Affichage{0}{#4}{#5})\fi%
}{}
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=2}{\ifx\bla#4\bla\xintifboolexpr{#3>0}{\xintifboolexpr{#2=1}{}{(\num{#2}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#2=1}{}{)}^2+2\times\xintifboolexpr{#2=1}{}{\num{#2}}\useKV[ClesDistributivite]{Lettre}\times\num{#3}+\num{#3}^2}{\xintifboolexpr{#2=1}{}{(\num{#2}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#2=1}{}{)}^2-2\times\xintifboolexpr{#2=1}{}{\num{#2}}\useKV[ClesDistributivite]{Lettre}\times\num{\fpeval{0-#3}}+\num{\fpeval{0-#3}}^2}\else\xintifboolexpr{#2=1}{}{(\num{#2}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#2=1}{}{)}^2-\num{#3}^2\fi}{}
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=3}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==2}{\ifx\bla#4\bla\xintifboolexpr{#3>0}{\xintifboolexpr{#2==1}{}{(\num{#2}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#2==1}{}{)}^2+2\times\xintifboolexpr{#2==1}{}{\num{#2}}\useKV[ClesDistributivite]{Lettre}\times\num{#3}+\num{#3}^2}{\xintifboolexpr{#2==1}{}{(\num{#2}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#2==1}{}{)}^2-2\times\xintifboolexpr{#2==1}{}{\num{#2}}\useKV[ClesDistributivite]{Lettre}\times\num{\fpeval{0-#3}}+\num{\fpeval{0-#3}}^2}\else\xintifboolexpr{#2==1}{}{(\num{#2}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#2==1}{}{)}^2-\num{#3}^2\fi}{}
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==3}{%
\xintifboolexpr{\theNbCalculDistri>1}{\setcounter{NbCalculDistri}{0}}{}%
\stepcounter{NbCalculDistri}%
\ifx\bla#4\bla%
@@ -3601,9 +3601,9 @@
\xdef\Multi{\fpeval{-\Multi}}%
\xdef\Multim{\fpeval{-\Multim}}%
\xdef\Multil{\fpeval{-\Multil}}%
- \xintifboolexpr{\Multi=0}{}{\xintifboolexpr{\Multi<0}{(}{}\Affichage{\Multi}{0}{0}\xintifboolexpr{\Multi<0}{)}{}}%
- \xintifboolexpr{\Multim=0}{}{\xintifboolexpr{\Multim>0}{+}{+(}\Affichage{0}{\Multim}{0}\xintifboolexpr{\Multim<0}{)}{}}%
- \xintifboolexpr{\Multil=0}{}{\xintifboolexpr{\Multil>0}{+}{+(}\Affichage{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}}%
+ \xintifboolexpr{\Multi==0}{}{\xintifboolexpr{\Multi<0}{(}{}\Affichage{\Multi}{0}{0}\xintifboolexpr{\Multi<0}{)}{}}%
+ \xintifboolexpr{\Multim==0}{}{\xintifboolexpr{\Multim>0}{+}{+(}\Affichage{0}{\Multim}{0}\xintifboolexpr{\Multim<0}{)}{}}%
+ \xintifboolexpr{\Multil==0}{}{\xintifboolexpr{\Multil>0}{+}{+(}\Affichage{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}}%
}{%
\Affichage{\Multi}{\Multim}{\Multil}%
}
@@ -3621,9 +3621,9 @@
\xdef\Multi{\fpeval{-\Multi}}%
\xdef\Multim{\fpeval{-\Multim}}%
\xdef\Multil{\fpeval{-\Multil}}%
- \xintifboolexpr{\Multi=0}{}{\xintifboolexpr{\Multi<0}{(}{}\Affichage{\Multi}{0}{0}\xintifboolexpr{\Multi<0}{)}{}}%
- \xintifboolexpr{\Multim=0}{}{\xintifboolexpr{\Multim>0}{+}{+(}\Affichage{0}{\Multim}{0}\xintifboolexpr{\Multim<0}{)}{}}%
- \xintifboolexpr{\Multil=0}{}{\xintifboolexpr{\Multil>0}{+}{+(}\Affichage{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}}%
+ \xintifboolexpr{\Multi==0}{}{\xintifboolexpr{\Multi<0}{(}{}\Affichage{\Multi}{0}{0}\xintifboolexpr{\Multi<0}{)}{}}%
+ \xintifboolexpr{\Multim==0}{}{\xintifboolexpr{\Multim>0}{+}{+(}\Affichage{0}{\Multim}{0}\xintifboolexpr{\Multim<0}{)}{}}%
+ \xintifboolexpr{\Multil==0}{}{\xintifboolexpr{\Multil>0}{+}{+(}\Affichage{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}}%
}{%
\Affichage{\Multi}{\Multim}{\Multil}%
}
@@ -3633,17 +3633,17 @@
}{}%
}{%
\ifboolKV[ClesDistributivite]{Numerique}{%
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=0}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==0}{%
\num{\fpeval{#2+#3}}\times\num{\fpeval{#4+#5}}\multido{\i=2+1}{4}{=\Distri[Numerique,Etape=\i]{#2}{#3}{#4}{#5}}%
}{%
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=-1}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==-1}{%
\Distri[Numerique,Etape=3]{#2}{#3}{#4}{#5}\multido{\i=2+-1}{2}{=\Distri[Numerique,Etape=\i]{#2}{#3}{#4}{#5}}=\num{\fpeval{(#2+#3)*(#4+#5)}}%
}{%
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=1}{\num{\fpeval{#2+#3}}\times\num{\fpeval{#4+#5}}}{}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=2}{\num{\fpeval{#2+#3}}\times(\num{#4}\xintifboolexpr{#5>0}{+}{-}\num{\fpeval{abs(#5)}})}{}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=3}{\num{#3}\times\num{#4}\xintifboolexpr{#5>0}{+}{-}\num{#3}\times\num{\fpeval{abs(#5)}}}{}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=4}{\num{\fpeval{#3*#4}}\xintifboolexpr{#5>0}{+}{-}\num{\fpeval{abs(#3*#5)}}}{}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=5}{\num{\fpeval{#3*#4+#3*#5}}}{}%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==1}{\num{\fpeval{#2+#3}}\times\num{\fpeval{#4+#5}}}{}%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==2}{\num{\fpeval{#2+#3}}\times(\num{#4}\xintifboolexpr{#5>0}{+}{-}\num{\fpeval{abs(#5)}})}{}%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==3}{\num{#3}\times\num{#4}\xintifboolexpr{#5>0}{+}{-}\num{#3}\times\num{\fpeval{abs(#5)}}}{}%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==4}{\num{\fpeval{#3*#4}}\xintifboolexpr{#5>0}{+}{-}\num{\fpeval{abs(#3*#5)}}}{}%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==5}{\num{\fpeval{#3*#4+#3*#5}}}{}%
}%
}%
}{%
@@ -3655,58 +3655,58 @@
\NomLettre&=\Distri[Etape=\NomFin]{#2}{#3}{#4}{#5}%
}{%
% Etape 1
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=1}{%
- \xintifboolexpr{#2=0}{%
- }{\xintifboolexpr{#3=0}{}{(}}\Tikzmark{\Affichage[#1]{0}{#2}{0}}%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==1}{%
+ \xintifboolexpr{#2==0}{%
+ }{\xintifboolexpr{#3==0}{}{(}}\Tikzmark{\Affichage[#1]{0}{#2}{0}}%
\ifboolKV[ClesDistributivite]{AideAdda}{\mathcolor{DCAide}{+(}}{}%
- \xintifboolexpr{#3>0}{\xintifboolexpr{#2=0}{}{+}}{\xintifboolexpr{#3<0}{-}{}}\Tikzmark{\Affichage[#1]{0}{0}{\fpeval{abs(#3)}}}%
+ \xintifboolexpr{#3>0}{\xintifboolexpr{#2==0}{}{+}}{\xintifboolexpr{#3<0}{-}{}}\Tikzmark{\Affichage[#1]{0}{0}{\fpeval{abs(#3)}}}%
\ifboolKV[ClesDistributivite]{AideAdda}{\mathcolor{DCAide}{)}}{}%
- \xintifboolexpr{#2=0}{}{\xintifboolexpr{#3=0}{}{)}}%
+ \xintifboolexpr{#2==0}{}{\xintifboolexpr{#3==0}{}{)}}%
%
\ifboolKV[ClesDistributivite]{AideMul}{\times}{}%on aide dans le cas double
\xdef\Multi{\fpeval{#4*#5}}%affichage auto si (a+b)xk
%
- \xintifboolexpr{\Multi=0}{\times%
+ \xintifboolexpr{\Multi==0}{\times%
\xintifboolexpr{#4<0}{(}{\xintifboolexpr{#5<0}{(}{}}}{(}%
\Tikzmark{\Affichage[#1]{0}{#4}{0}}%
\ifboolKV[ClesDistributivite]{AideAddb}{\mathcolor{DCAide}{+(}}{}%
- \xintifboolexpr{#5>0}{\xintifboolexpr{#4=0}{}{+}}{\xintifboolexpr{#5<0}{\xintifboolexpr{#4=0}{{-}}{-}}{}}\Tikzmark{\Affichage[#1]{0}{0}{\fpeval{abs(#5)}}}%
+ \xintifboolexpr{#5>0}{\xintifboolexpr{#4==0}{}{+}}{\xintifboolexpr{#5<0}{\xintifboolexpr{#4==0}{{-}}{-}}{}}\Tikzmark{\Affichage[#1]{0}{0}{\fpeval{abs(#5)}}}%
\ifboolKV[ClesDistributivite]{AideAddb}{\mathcolor{DCAide}{)}}{}%
- \xintifboolexpr{\Multi=0}{%
+ \xintifboolexpr{\Multi==0}{%
\xintifboolexpr{#4<0}{)}{\xintifboolexpr{#5<0}{)}{}}}{)}%
\ifboolKV[ClesDistributivite]{Fleches}{%
\xdef\Multi{\fpeval{#2*#3*#4*#5}}%
- \xintifboolexpr{\Multi=0}{%
+ \xintifboolexpr{\Multi==0}{%
\xdef\Multij{\fpeval{#2*#3}}%\relax
- \xintifboolexpr{\Multij=0}{\xintifboolexpr{#2=0}{\DrawArrowSimple{1}}{\DrawArrowSimple{0}}}{\xintifboolexpr{#4=0}{\DrawArrowSimpleRenverse{3}}{\DrawArrowSimpleRenverse{2}}}%
+ \xintifboolexpr{\Multij==0}{\xintifboolexpr{#2==0}{\DrawArrowSimple{1}}{\DrawArrowSimple{0}}}{\xintifboolexpr{#4==0}{\DrawArrowSimpleRenverse{3}}{\DrawArrowSimpleRenverse{2}}}%
}{%
\DrawArrow%
}%
}{}\setcounter{NbDistri}{0}%
}{}
% Etape 2
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=2}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==2}{%
\xdef\Multi{\fpeval{#2*#4}}%
- \xintifboolexpr{\Multi=0}{}{%
+ \xintifboolexpr{\Multi==0}{}{%
\xintifboolexpr{#2<0}{(}{}\Affichage[#1]{0}{#2}{0}\xintifboolexpr{#2<0}{)}{}\times\xintifboolexpr{#4<0}{(}{}\Affichage[#1]{0}{#4}{0}\xintifboolexpr{#4<0}{)}{}%
}
\xdef\Multij{\fpeval{#2*#5}}%
- \xintifboolexpr{\Multij=0}{}{%
- \xintifboolexpr{\Multi=0}{}{+}%
+ \xintifboolexpr{\Multij==0}{}{%
+ \xintifboolexpr{\Multi==0}{}{+}%
\xintifboolexpr{#2<0}{(}{}\Affichage[#1]{0}{#2}{0}\xintifboolexpr{#2<0}{)}{}\times\xintifboolexpr{#5<0}{(}{}\Affichage[#1]{0}{0}{#5}\xintifboolexpr{#5<0}{)}{}%
}%
\xdef\Multik{\fpeval{#3*#4}}%
- \xintifboolexpr{\Multik=0}{}{%
- \xintifboolexpr{\Multi=0}{}{+}%
+ \xintifboolexpr{\Multik==0}{}{%
+ \xintifboolexpr{\Multi==0}{}{+}%
\xintifboolexpr{#3<0}{(}{}\Affichage[#1]{0}{0}{#3}\xintifboolexpr{#3<0}{)}{}\times\xintifboolexpr{#4<0}{(}{}\Affichage[#1]{0}{#4}{0}\xintifboolexpr{#4<0}{)}{}%
}%
\xdef\Multil{\fpeval{#3*#5}}%
- \xintifboolexpr{\Multil=0}{}{+%
+ \xintifboolexpr{\Multil==0}{}{+%
\xintifboolexpr{#3<0}{(}{}\Affichage[#1]{0}{0}{#3}\xintifboolexpr{#3<0}{)}{}\times\xintifboolexpr{#5<0}{(}{}\Affichage[#1]{0}{0}{#5}\xintifboolexpr{#5<0}{)}{}%
}%
}{}%
% Etape 3
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=3}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==3}{%
\stepcounter{NbCalculDistri}%
\xdef\Multi{\fpeval{#2*#4}}%
\xdef\Multij{\fpeval{#2*#5}}%
@@ -3716,17 +3716,17 @@
%% expressions \`a d\'evelopper
\xintifboolexpr{\theNbCalculDistri>1}{\xintifboolexpr{\Multi<0}{(\Affichage{\Multi}{0}{0})}{\Affichage{\Multi}{0}{0}}}{\Affichage{\Multi}{0}{0}}%
\ifboolKV[ClesDistributivite]{Reduction}{\mathunderline{DCReduction}{%
- \xintifboolexpr{\Multij=0}{}{\xintifboolexpr{\Multi=0}{}{{}+}\xintifboolexpr{\Multij<0}{(}{}\Affichage{0}{\Multij}{0}\xintifboolexpr{\Multij<0}{)}{}}%
- \xintifboolexpr{\Multik=0}{}{\xintifboolexpr{\Multil=0}{\xintifboolexpr{#2=0}{}{+}}{+}\xintifboolexpr{\Multik<0}{(}{}\Affichage{0}{\Multik}{0}\xintifboolexpr{\Multik<0}{)}{}}%
+ \xintifboolexpr{\Multij==0}{}{\xintifboolexpr{\Multi==0}{}{{}+}\xintifboolexpr{\Multij<0}{(}{}\Affichage{0}{\Multij}{0}\xintifboolexpr{\Multij<0}{)}{}}%
+ \xintifboolexpr{\Multik==0}{}{\xintifboolexpr{\Multil==0}{\xintifboolexpr{#2==0}{}{+}}{+}\xintifboolexpr{\Multik<0}{(}{}\Affichage{0}{\Multik}{0}\xintifboolexpr{\Multik<0}{)}{}}%
}%
}{%
- \xintifboolexpr{\Multij=0}{}{\xintifboolexpr{\Multi=0}{}{+}\xintifboolexpr{\Multij<0}{(}{}\Affichage{0}{\Multij}{0}\xintifboolexpr{\Multij<0}{)}{}}%
- \xintifboolexpr{\Multik=0}{}{\xintifboolexpr{\Multil=0}{\xintifboolexpr{#2=0}{}{+}}{\xintifboolexpr{#2=0}{}{+}}\xintifboolexpr{\Multik<0}{(}{}\Affichage{0}{\Multik}{0}\xintifboolexpr{\Multik<0}{)}{}}%
+ \xintifboolexpr{\Multij==0}{}{\xintifboolexpr{\Multi==0}{}{+}\xintifboolexpr{\Multij<0}{(}{}\Affichage{0}{\Multij}{0}\xintifboolexpr{\Multij<0}{)}{}}%
+ \xintifboolexpr{\Multik==0}{}{\xintifboolexpr{\Multil==0}{\xintifboolexpr{#2==0}{}{+}}{\xintifboolexpr{#2==0}{}{+}}\xintifboolexpr{\Multik<0}{(}{}\Affichage{0}{\Multik}{0}\xintifboolexpr{\Multik<0}{)}{}}%
}%
- \xintifboolexpr{\Multil=0}{}{+}\xintifboolexpr{\Multil<0}{(}{}\Affichage{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}%
+ \xintifboolexpr{\Multil==0}{}{+}\xintifboolexpr{\Multil<0}{(}{}\Affichage{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}%
}{}%
% Etape 4
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=4}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==4}{%
\xdef\Multi{\fpeval{#2*#4}}%
\xdef\Multij{\fpeval{#2*#5}}%
\xdef\Multik{\fpeval{#3*#4}}%
@@ -3740,15 +3740,15 @@
\xdef\Multi{\fpeval{-\Multi}}%
\xdef\Multim{\fpeval{-\Multim}}%
\xdef\Multil{\fpeval{-\Multil}}%
- \xintifboolexpr{\Multi=0}{}{\xintifboolexpr{\Multi<0}{(}{}\Affichage{\Multi}{0}{0}\xintifboolexpr{\Multi<0}{)}{}}%
- \xintifboolexpr{\Multim=0}{}{\xintifboolexpr{\Multim>0}{+}{+(}\Affichage{0}{\Multim}{0}\xintifboolexpr{\Multim<0}{)}{}}%
- \xintifboolexpr{\Multil=0}{}{\xintifboolexpr{\Multil>0}{+}{+(}\Affichage{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}}%
+ \xintifboolexpr{\Multi==0}{}{\xintifboolexpr{\Multi<0}{(}{}\Affichage{\Multi}{0}{0}\xintifboolexpr{\Multi<0}{)}{}}%
+ \xintifboolexpr{\Multim==0}{}{\xintifboolexpr{\Multim>0}{+}{+(}\Affichage{0}{\Multim}{0}\xintifboolexpr{\Multim<0}{)}{}}%
+ \xintifboolexpr{\Multil==0}{}{\xintifboolexpr{\Multil>0}{+}{+(}\Affichage{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}}%
}{%
\xintifboolexpr{\theNbCalculDistri>1}{\xintifboolexpr{\Multi<0}{(\Affichage{\Multi}{0}{0})}{\Affichage{\Multi}{0}{0}}}{\Affichage{\Multi}{0}{0}}%
- \xintifboolexpr{\Multim=0}{}{%
+ \xintifboolexpr{\Multim==0}{}{%
\xintifboolexpr{\Multim>0}{+\Affichage{0}{\Multim}{0}}{-\Affichage{0}{\fpeval{-\Multim}}{0}}%
}%
- \xintifboolexpr{\Multil=0}{}{\xintifboolexpr{\Multil<0}{-\Affichage{0}{0}{\fpeval{-\Multil}}}{+\Affichage{0}{0}{\Multil}}}%
+ \xintifboolexpr{\Multil==0}{}{\xintifboolexpr{\Multil<0}{-\Affichage{0}{0}{\fpeval{-\Multil}}}{+\Affichage{0}{0}{\Multil}}}%
}
\ifboolKV[ClesDistributivite]{Somme}{\xdef\SommeA{\fpeval{\SommeA+#2*#4}}\xdef\SommeB{\fpeval{\SommeB+#2*#5+#3*#4}}\xdef\SommeC{\fpeval{\SommeC+#3*#5}}}{}%
\ifboolKV[ClesDistributivite]{Difference}{\xdef\SommeA{\fpeval{\SommeA-#2*#4}}\xdef\SommeB{\fpeval{\SommeB-#2*#5-#3*#4}}\xdef\SommeC{\fpeval{\SommeC-#3*#5}}}{}%
@@ -3773,14 +3773,14 @@
\def\LETTRE{\useKV[ClesDistributivite]{Lettre}}%
\ensuremath{%
% partie du nombre
- \xintifboolexpr{#2=0}{}{\num{#2}}%
+ \xintifboolexpr{#2==0}{}{\num{#2}}%
% partie du x
- \xintifboolexpr{#3=0}{}{\xintifboolexpr{#3>0}{\xintifboolexpr{#2=0}{}{+}\xintifboolexpr{#3=1}{}{\num{#3}}}{%
- \xintifboolexpr{#2=0}{\xintifboolexpr{#3=-1}{-}{\num{#3}}}{\xintifboolexpr{#3=-1}{-}{-\num{\fpeval{abs(#3)}}}}
+ \xintifboolexpr{#3==0}{}{\xintifboolexpr{#3>0}{\xintifboolexpr{#2==0}{}{+}\xintifboolexpr{#3==1}{}{\num{#3}}}{%
+ \xintifboolexpr{#2==0}{\xintifboolexpr{#3==-1}{-}{\num{#3}}}{\xintifboolexpr{#3==-1}{-}{-\num{\fpeval{abs(#3)}}}}
}\LETTRE}%
% partie du x^2
- \xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{\xintifboolexpr{#2=0}{\xintifboolexpr{#3=0}{}{+}}{+}\xintifboolexpr{#4=1}{}{\num{#4}}}{%
- \xintifboolexpr{#2=0}{\xintifboolexpr{#3=0}{\num{#4}}{-\num{\fpeval{abs(#4)}}}}{-\num{\fpeval{abs(#4)}}}}\LETTRE^2}%
+ \xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{\xintifboolexpr{#2==0}{\xintifboolexpr{#3==0}{}{+}}{+}\xintifboolexpr{#4==1}{}{\num{#4}}}{%
+ \xintifboolexpr{#2==0}{\xintifboolexpr{#3==0}{\num{#4}}{-\num{\fpeval{abs(#4)}}}}{-\num{\fpeval{abs(#4)}}}}\LETTRE^2}%
}%
}%
@@ -3796,20 +3796,20 @@
\colorlet{DCFlechesh}{\useKV[ClesDistributivite]{CouleurFH}}%
\colorlet{DCFlechesb}{\useKV[ClesDistributivite]{CouleurFB}}%
\ifboolKV[ClesDistributivite]{Remarquable}{%
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=1}{\ifx\bla#4\bla(\AffichageEchange{#2}{#3}{0})^2\else(\AffichageEchange{#2}{#3}{0})(\AffichageEchange{#4}{#5}{0})\fi
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==1}{\ifx\bla#4\bla(\AffichageEchange{#2}{#3}{0})^2\else(\AffichageEchange{#2}{#3}{0})(\AffichageEchange{#4}{#5}{0})\fi
}{}
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=2}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==2}{%
\ifx\bla#4\bla\xintifboolexpr{#3>0}{%
- \num{#2}^2+2\times\num{#2}\times\xintifboolexpr{#3=1}{}{\num{#3}}\useKV[ClesDistributivite]{Lettre}+
- \xintifboolexpr{#3=1}{}{(\num{#3}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#3=1}{}{)}^2%
+ \num{#2}^2+2\times\num{#2}\times\xintifboolexpr{#3==1}{}{\num{#3}}\useKV[ClesDistributivite]{Lettre}+
+ \xintifboolexpr{#3==1}{}{(\num{#3}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#3==1}{}{)}^2%
}{%
- \num{#2}^2-2\times\num{#2}\times\xintifboolexpr{#3=-1}{}{\num{\fpeval{0-#3}}}\useKV[ClesDistributivite]{Lettre}+
- \xintifboolexpr{#3=-1}{}{(\num{\fpeval{0-#3}}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#3=-1}{}{)}^2%
+ \num{#2}^2-2\times\num{#2}\times\xintifboolexpr{#3==-1}{}{\num{\fpeval{0-#3}}}\useKV[ClesDistributivite]{Lettre}+
+ \xintifboolexpr{#3==-1}{}{(\num{\fpeval{0-#3}}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#3==-1}{}{)}^2%
}%
- \else\num{#2}^2-\xintifboolexpr{#3=1}{}{(\num{#3}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#3=1}{}{)}^2%
+ \else\num{#2}^2-\xintifboolexpr{#3==1}{}{(\num{#3}}\useKV[ClesDistributivite]{Lettre}\xintifboolexpr{#3==1}{}{)}^2%
\fi%
}{}
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=3}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==3}{%
\xintifboolexpr{\theNbCalculDistri>1}{\setcounter{NbCalculDistri}{0}}{}%
\stepcounter{NbCalculDistri}%
\ifx\bla#4\bla%
@@ -3824,9 +3824,9 @@
\xdef\Multi{\fpeval{-\Multi}}%
\xdef\Multim{\fpeval{-\Multim}}%
\xdef\Multil{\fpeval{-\Multil}}%
- \xintifboolexpr{\Multi=0}{}{\xintifboolexpr{\Multi<0}{(}{}\AffichageEchange{\Multi}{0}{0}\xintifboolexpr{\Multi<0}{)}{}}%
- \xintifboolexpr{\Multim=0}{}{\xintifboolexpr{\Multim>0}{+}{+(}\AffichageEchange{0}{\Multim}{0}\xintifboolexpr{\Multim<0}{)}{}}%
- \xintifboolexpr{\Multil=0}{}{\xintifboolexpr{\Multil>0}{+}{+(}\AffichageEchange{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}}%
+ \xintifboolexpr{\Multi==0}{}{\xintifboolexpr{\Multi<0}{(}{}\AffichageEchange{\Multi}{0}{0}\xintifboolexpr{\Multi<0}{)}{}}%
+ \xintifboolexpr{\Multim==0}{}{\xintifboolexpr{\Multim>0}{+}{+(}\AffichageEchange{0}{\Multim}{0}\xintifboolexpr{\Multim<0}{)}{}}%
+ \xintifboolexpr{\Multil==0}{}{\xintifboolexpr{\Multil>0}{+}{+(}\AffichageEchange{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}}%
}{%
\AffichageEchange{\Multi}{\Multim}{\Multil}%
}
@@ -3844,9 +3844,9 @@
\xdef\Multi{\fpeval{-\Multi}}%
\xdef\Multim{\fpeval{-\Multim}}%
\xdef\Multil{\fpeval{-\Multil}}%
- \xintifboolexpr{\Multi=0}{}{\xintifboolexpr{\Multi<0}{(}{}\AffichageEchange{\Multi}{0}{0}\xintifboolexpr{\Multi<0}{)}{}}%
- \xintifboolexpr{\Multim=0}{}{\xintifboolexpr{\Multim>0}{+}{+(}\AffichageEchange{0}{\Multim}{0}\xintifboolexpr{\Multim<0}{)}{}}%
- \xintifboolexpr{\Multil=0}{}{\xintifboolexpr{\Multil>0}{+}{+(}\AffichageEchange{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}}%
+ \xintifboolexpr{\Multi==0}{}{\xintifboolexpr{\Multi<0}{(}{}\AffichageEchange{\Multi}{0}{0}\xintifboolexpr{\Multi<0}{)}{}}%
+ \xintifboolexpr{\Multim==0}{}{\xintifboolexpr{\Multim>0}{+}{+(}\AffichageEchange{0}{\Multim}{0}\xintifboolexpr{\Multim<0}{)}{}}%
+ \xintifboolexpr{\Multil==0}{}{\xintifboolexpr{\Multil>0}{+}{+(}\AffichageEchange{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}}%
}{%
\AffichageEchange{\Multi}{\Multim}{\Multil}%
}
@@ -3858,19 +3858,6 @@
}{}%
}{%
\ifboolKV[ClesDistributivite]{Numerique}{%
- % \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=0}{%
- % \num{\fpeval{#2+#3}}\times\num{\fpeval{#4+#5}}\multido{\i=2+1}{4}{=\Distri[Numerique,Etape=\i]{#2}{#3}{#4}{#5}}%
- % }{%
- % \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=-1}{%
- % \Distri[Numerique,Etape=3]{#2}{#3}{#4}{#5}\multido{\i=2+-1}{2}{=\Distri[Numerique,Etape=\i]{#2}{#3}{#4}{#5}}=\num{\fpeval{(#2+#3)*(#4+#5)}}%
- % }{%
- % \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=1}{\num{\fpeval{#2+#3}}\times\num{\fpeval{#4+#5}}}{}%
- % \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=2}{\num{\fpeval{#2+#3}}\times(\num{#4}\xintifboolexpr{#5>0}{+}{-}\num{\fpeval{abs(#5)}})}{}%
- % \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=3}{\num{#3}\times\num{#4}\xintifboolexpr{#5>0}{+}{-}\num{#3}\times\num{\fpeval{abs(#5)}}}{}%
- % \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=4}{\num{\fpeval{#3*#4}}\xintifboolexpr{#5>0}{+}{-}\num{\fpeval{abs(#3*#5)}}}{}%
- % \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=5}{\num{\fpeval{#3*#4+#3*#5}}}{}%
- % }%
- % }%
}{%
\ifboolKV[ClesDistributivite]{All}{%
\xdef\NomLettre{\useKV[ClesDistributivite]{NomExpression}}%
@@ -3881,126 +3868,126 @@
\NomLettre&=\DistriEchange[Echange=\ValeurEchange,Etape=\NomFin]{#2}{#3}{#4}{#5}%
}{%
% Etape 1
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=1}{%
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=1||\useKV[ClesDistributivite]{Echange}=3}{%
- \xintifboolexpr{#2=0}{%
- }{\xintifboolexpr{#3=0}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==1}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==1||\useKV[ClesDistributivite]{Echange}==3}{%
+ \xintifboolexpr{#2==0}{%
+ }{\xintifboolexpr{#3==0}{%
}{(}}\Tikzmark{\Affichage[#1]{0}{0}{#2}}%
\ifboolKV[ClesDistributivite]{AideAdda}{\mathcolor{DCAide}{+(}}{}%
- \xintifboolexpr{#3>0}{\xintifboolexpr{#2=0}{}{+}}{\xintifboolexpr{#3<0}{-}{}}\Tikzmark{\Affichage[#1]{0}{\fpeval{abs(#3)}}{0}}%
+ \xintifboolexpr{#3>0}{\xintifboolexpr{#2==0}{}{+}}{\xintifboolexpr{#3<0}{-}{}}\Tikzmark{\Affichage[#1]{0}{\fpeval{abs(#3)}}{0}}%
\ifboolKV[ClesDistributivite]{AideAdda}{\mathcolor{DCAide}{)}}{}%
- \xintifboolexpr{#2=0}{%
- }{\xintifboolexpr{#3=0}{%
+ \xintifboolexpr{#2==0}{%
+ }{\xintifboolexpr{#3==0}{%
}{)}}%
}{
- \xintifboolexpr{#2=0}{%
- }{\xintifboolexpr{#3=0}{%
+ \xintifboolexpr{#2==0}{%
+ }{\xintifboolexpr{#3==0}{%
}{(}}\Tikzmark{\Affichage[#1]{0}{#2}{0}}%
\ifboolKV[ClesDistributivite]{AideAdda}{\mathcolor{DCAide}{+(}}{}%
- \xintifboolexpr{#3>0}{\xintifboolexpr{#2=0}{}{+}}{\xintifboolexpr{#3<0}{-}{}}\Tikzmark{\Affichage[#1]{0}{0}{\fpeval{abs(#3)}}}%
+ \xintifboolexpr{#3>0}{\xintifboolexpr{#2==0}{}{+}}{\xintifboolexpr{#3<0}{-}{}}\Tikzmark{\Affichage[#1]{0}{0}{\fpeval{abs(#3)}}}%
\ifboolKV[ClesDistributivite]{AideAdda}{\mathcolor{DCAide}{)}}{}%
- \xintifboolexpr{#2=0}{%
- }{\xintifboolexpr{#3=0}{%
+ \xintifboolexpr{#2==0}{%
+ }{\xintifboolexpr{#3==0}{%
}{)}}%
}%
%
\ifboolKV[ClesDistributivite]{AideMul}{\times}{}%on aide dans le cas double
\xdef\Multi{\fpeval{#4*#5}}%affichage auto si (a+b)xk
%
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=2||\useKV[ClesDistributivite]{Echange}=3}{%
- \xintifboolexpr{\Multi=0}{\times%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==2||\useKV[ClesDistributivite]{Echange}==3}{%
+ \xintifboolexpr{\Multi==0}{\times%
\xintifboolexpr{#4<0}{(}{\xintifboolexpr{#5<0}{(}{}}}{(}%
\Tikzmark{\AffichageEchange[#1]{#4}{0}{0}}%
\ifboolKV[ClesDistributivite]{AideAddb}{\mathcolor{DCAide}{+(}}{}%
- \xintifboolexpr{#5>0}{\xintifboolexpr{#4=0}{}{+}}{\xintifboolexpr{#5<0}{-}{}}\Tikzmark{\AffichageEchange[#1]{0}{\fpeval{abs(#5)}}{0}}%
+ \xintifboolexpr{#5>0}{\xintifboolexpr{#4==0}{}{+}}{\xintifboolexpr{#5<0}{-}{}}\Tikzmark{\AffichageEchange[#1]{0}{\fpeval{abs(#5)}}{0}}%
\ifboolKV[ClesDistributivite]{AideAddb}{\mathcolor{DCAide}{)}}{}%
- \xintifboolexpr{\Multi=0}{%
+ \xintifboolexpr{\Multi==0}{%
\xintifboolexpr{#4<0}{)}{\xintifboolexpr{#5<0}{)}{}}}{)}%
}{%
- \xintifboolexpr{\Multi=0}{\times%
+ \xintifboolexpr{\Multi==0}{\times%
\xintifboolexpr{#4<0}{(}{\xintifboolexpr{#5<0}{(}{}}}{(}%
\Tikzmark{\Affichage[#1]{0}{#4}{0}}%
\ifboolKV[ClesDistributivite]{AideAddb}{\mathcolor{DCAide}{+(}}{}%
- \xintifboolexpr{#5>0}{\xintifboolexpr{#4=0}{}{+}}{\xintifboolexpr{#5<0}{\xintifboolexpr{#4=0}{{-}}{-}}{}}\Tikzmark{\Affichage[#1]{0}{0}{\fpeval{abs(#5)}}}%
+ \xintifboolexpr{#5>0}{\xintifboolexpr{#4==0}{}{+}}{\xintifboolexpr{#5<0}{\xintifboolexpr{#4==0}{{-}}{-}}{}}\Tikzmark{\Affichage[#1]{0}{0}{\fpeval{abs(#5)}}}%
\ifboolKV[ClesDistributivite]{AideAddb}{\mathcolor{DCAide}{)}}{}%
- \xintifboolexpr{\Multi=0}{%
+ \xintifboolexpr{\Multi==0}{%
\xintifboolexpr{#4<0}{)}{\xintifboolexpr{#5<0}{)}{}}}{)}%
}%
\ifboolKV[ClesDistributivite]{Fleches}{%
\xdef\Multi{\fpeval{#2*#3*#4*#5}}%
- \xintifboolexpr{\Multi=0}{%
+ \xintifboolexpr{\Multi==0}{%
\xdef\Multij{\fpeval{#2*#3}}%\relax
- \xintifboolexpr{\Multij=0}{\xintifboolexpr{#2=0}{\DrawArrowSimple{1}}{\DrawArrowSimple{0}}}{\xintifboolexpr{#4=0}{\DrawArrowSimpleRenverse{3}}{\DrawArrowSimpleRenverse{2}}}
+ \xintifboolexpr{\Multij==0}{\xintifboolexpr{#2==0}{\DrawArrowSimple{1}}{\DrawArrowSimple{0}}}{\xintifboolexpr{#4==0}{\DrawArrowSimpleRenverse{3}}{\DrawArrowSimpleRenverse{2}}}
}{%
\DrawArrow
}%
}{}\setcounter{NbDistri}{0}%
}{}%
% Etape 2
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=2}{%
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=1}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==2}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==1}{%
\xdef\Multi{\fpeval{#2*#4}}%
- \xintifboolexpr{\Multi=0}{}{%
+ \xintifboolexpr{\Multi==0}{}{%
\xintifboolexpr{#2<0}{(}{}\AffichageEchange[#1]{#2}{0}{0}\xintifboolexpr{#2<0}{)}{}\times\xintifboolexpr{#4<0}{(}{}\Affichage[#1]{0}{#4}{0}\xintifboolexpr{#4<0}{)}{}%
}%
\xdef\Multij{\fpeval{#2*#5}}%
- \xintifboolexpr{\Multij=0}{}{%
- \xintifboolexpr{\Multi=0}{}{+}%
+ \xintifboolexpr{\Multij==0}{}{%
+ \xintifboolexpr{\Multi==0}{}{+}%
\xintifboolexpr{#2<0}{(}{}\AffichageEchange[#1]{#2}{0}{0}\xintifboolexpr{#2<0}{)}{}\times\xintifboolexpr{#5<0}{(}{}\Affichage[#1]{0}{0}{#5}\xintifboolexpr{#5<0}{)}{}%
}%
\xdef\Multik{\fpeval{#3*#4}}%
- \xintifboolexpr{\Multik=0}{}{%
- \xintifboolexpr{\Multi=0}{}{+}%
+ \xintifboolexpr{\Multik==0}{}{%
+ \xintifboolexpr{\Multi==0}{}{+}%
\xintifboolexpr{#3<0}{(}{}\AffichageEchange[#1]{0}{#3}{0}\xintifboolexpr{#3<0}{)}{}\times\xintifboolexpr{#4<0}{(}{}\Affichage[#1]{0}{#4}{0}\xintifboolexpr{#4<0}{)}{}%
}%
\xdef\Multil{\fpeval{#3*#5}}%
- \xintifboolexpr{\Multil=0}{}{+%
+ \xintifboolexpr{\Multil==0}{}{+%
\xintifboolexpr{#3<0}{(}{}\AffichageEchange[#1]{0}{#3}{0}\xintifboolexpr{#3<0}{)}{}\times\xintifboolexpr{#5<0}{(}{}\Affichage[#1]{0}{0}{#5}\xintifboolexpr{#5<0}{)}{}%
}%
}{}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=2}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==2}{%
\xdef\Multi{\fpeval{#2*#4}}%
- \xintifboolexpr{\Multi=0}{}{%
+ \xintifboolexpr{\Multi==0}{}{%
\xintifboolexpr{#2<0}{(}{}\Affichage[#1]{0}{#2}{0}\xintifboolexpr{#2<0}{)}{}\times\xintifboolexpr{#4<0}{(}{}\AffichageEchange[#1]{#4}{0}{0}\xintifboolexpr{#4<0}{)}{}%
}%
\xdef\Multij{\fpeval{#2*#5}}%
- \xintifboolexpr{\Multij=0}{}{%
- \xintifboolexpr{\Multi=0}{}{+}%
+ \xintifboolexpr{\Multij==0}{}{%
+ \xintifboolexpr{\Multi==0}{}{+}%
\xintifboolexpr{#2<0}{(}{}\Affichage[#1]{0}{#2}{0}\xintifboolexpr{#2<0}{)}{}\times\xintifboolexpr{#5<0}{(}{}\AffichageEchange[#1]{0}{#5}{0}\xintifboolexpr{#5<0}{)}{}%
}%
\xdef\Multik{\fpeval{#3*#4}}%
- \xintifboolexpr{\Multik=0}{}{%
- \xintifboolexpr{\Multi=0}{}{+}%
+ \xintifboolexpr{\Multik==0}{}{%
+ \xintifboolexpr{\Multi==0}{}{+}%
\xintifboolexpr{#3<0}{(}{}\Affichage[#1]{0}{0}{#3}\xintifboolexpr{#3<0}{)}{}\times\xintifboolexpr{#4<0}{(}{}\AffichageEchange[#1]{#4}{0}{0}\xintifboolexpr{#4<0}{)}{}%
}%
\xdef\Multil{\fpeval{#3*#5}}%
- \xintifboolexpr{\Multil=0}{}{+%
+ \xintifboolexpr{\Multil==0}{}{+%
\xintifboolexpr{#3<0}{(}{}\Affichage[#1]{0}{0}{#3}\xintifboolexpr{#3<0}{)}{}\times\xintifboolexpr{#5<0}{(}{}\AffichageEchange[#1]{0}{#5}{0}\xintifboolexpr{#5<0}{)}{}%
}%
}{}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=3}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==3}{%
\xdef\Multi{\fpeval{#2*#4}}%
- \xintifboolexpr{\Multi=0}{}{%
+ \xintifboolexpr{\Multi==0}{}{%
\xintifboolexpr{#2<0}{(}{}\AffichageEchange[#1]{#2}{0}{0}\xintifboolexpr{#2<0}{)}{}\times\xintifboolexpr{#4<0}{(}{}\AffichageEchange[#1]{#4}{0}{0}\xintifboolexpr{#4<0}{)}{}%
}%
\xdef\Multij{\fpeval{#2*#5}}%
- \xintifboolexpr{\Multij=0}{}{%
- \xintifboolexpr{\Multi=0}{}{+}%
+ \xintifboolexpr{\Multij==0}{}{%
+ \xintifboolexpr{\Multi==0}{}{+}%
\xintifboolexpr{#2<0}{(}{}\AffichageEchange[#1]{#2}{0}{0}\xintifboolexpr{#2<0}{)}{}\times\xintifboolexpr{#5<0}{(}{}\AffichageEchange[#1]{0}{#5}{0}\xintifboolexpr{#5<0}{)}{}%
}%
\xdef\Multik{\fpeval{#3*#4}}%
- \xintifboolexpr{\Multik=0}{}{%
- \xintifboolexpr{\Multi=0}{}{+}%
+ \xintifboolexpr{\Multik==0}{}{%
+ \xintifboolexpr{\Multi==0}{}{+}%
\xintifboolexpr{#3<0}{(}{}\AffichageEchange[#1]{0}{#3}{0}\xintifboolexpr{#3<0}{)}{}\times\xintifboolexpr{#4<0}{(}{}\AffichageEchange[#1]{#4}{0}{0}\xintifboolexpr{#4<0}{)}{}%
}%
\xdef\Multil{\fpeval{#3*#5}}%
- \xintifboolexpr{\Multil=0}{}{+%
+ \xintifboolexpr{\Multil==0}{}{+%
\xintifboolexpr{#3<0}{(}{}\AffichageEchange[#1]{0}{#3}{0}\xintifboolexpr{#3<0}{)}{}\times\xintifboolexpr{#5<0}{(}{}\AffichageEchange[#1]{0}{#5}{0}\xintifboolexpr{#5<0}{)}{}%
}%
}{}
}{}
% Etape 3
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=3}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==3}{%
\stepcounter{NbCalculDistri}%
\xdef\Multi{\fpeval{#2*#4}}%
\xdef\Multij{\fpeval{#2*#5}}%
@@ -4008,36 +3995,36 @@
\xdef\Multil{\fpeval{#3*#5}}%
%% ils sont red\'efinis pour pouvoir envisager la somme de deux
%% expressions \`a d\'evelopper
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=1}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==1}{%
\xintifboolexpr{\theNbCalculDistri>1}{\xintifboolexpr{\Multi<0}{(\AffichageEchange{0}{\Multi}{0})}{\AffichageEchange{0}{\Multi}{0}}}{\AffichageEchange{0}{\Multi}{0}}%
- \xintifboolexpr{\Multij=0}{}{\xintifboolexpr{\Multi=0}{}{+}\xintifboolexpr{\Multij<0}{(}{}\AffichageEchange{\Multij}{0}{0}\xintifboolexpr{\Multij<0}{)}{}}%
- \xintifboolexpr{\Multik=0}{}{\xintifboolexpr{\Multil=0}{\xintifboolexpr{#2=0}{}{+}}{+}\xintifboolexpr{\Multik<0}{(}{}\AffichageEchange{0}{0}{\Multik}\xintifboolexpr{\Multik<0}{)}{}}%
- \xintifboolexpr{\Multil=0}{}{+}\xintifboolexpr{\Multil<0}{(}{}\AffichageEchange{0}{\Multil}{0}\xintifboolexpr{\Multil<0}{)}{}%
+ \xintifboolexpr{\Multij==0}{}{\xintifboolexpr{\Multi==0}{}{+}\xintifboolexpr{\Multij<0}{(}{}\AffichageEchange{\Multij}{0}{0}\xintifboolexpr{\Multij<0}{)}{}}%
+ \xintifboolexpr{\Multik==0}{}{\xintifboolexpr{\Multil==0}{\xintifboolexpr{#2=0}{}{+}}{+}\xintifboolexpr{\Multik<0}{(}{}\AffichageEchange{0}{0}{\Multik}\xintifboolexpr{\Multik<0}{)}{}}%
+ \xintifboolexpr{\Multil==0}{}{+}\xintifboolexpr{\Multil<0}{(}{}\AffichageEchange{0}{\Multil}{0}\xintifboolexpr{\Multil<0}{)}{}%
\xdef\Multim{\fpeval{#2*#4+#3*#5}}%
\ifboolKV[ClesDistributivite]{Somme}{\xdef\SommeA{\fpeval{\SommeA+\Multik}}\xdef\SommeB{\fpeval{\SommeB+\Multim}}\xdef\SommeC{\fpeval{\SommeC+\Multij}}}{}%
\ifboolKV[ClesDistributivite]{Difference}{\xdef\SommeA{\fpeval{\SommeA-\Multik}}\xdef\SommeB{\fpeval{\SommeB-\Multim}}\xdef\SommeC{\fpeval{\SommeC-\Multij}}}{}%
}{}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=2}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==2}{%
\xintifboolexpr{\theNbCalculDistri>1}{\xintifboolexpr{\Multi<0}{(\AffichageEchange{0}{\Multi}{0})}{\AffichageEchange{0}{\Multi}{0}}}{\AffichageEchange{0}{\Multi}{0}}%
- \xintifboolexpr{\Multij=0}{}{\xintifboolexpr{\Multi=0}{}{+}\xintifboolexpr{\Multij<0}{(}{}\AffichageEchange{0}{0}{\Multij}\xintifboolexpr{\Multij<0}{)}{}}%
- \xintifboolexpr{\Multik=0}{}{\xintifboolexpr{\Multil=0}{\xintifboolexpr{#2=0}{}{+}}{+}\xintifboolexpr{\Multik<0}{(}{}\AffichageEchange{\Multik}{0}{0}\xintifboolexpr{\Multik<0}{)}{}}%
- \xintifboolexpr{\Multil=0}{}{+}\xintifboolexpr{\Multil<0}{(}{}\AffichageEchange{0}{\Multil}{0}\xintifboolexpr{\Multil<0}{)}{}%
+ \xintifboolexpr{\Multij==0}{}{\xintifboolexpr{\Multi==0}{}{+}\xintifboolexpr{\Multij<0}{(}{}\AffichageEchange{0}{0}{\Multij}\xintifboolexpr{\Multij<0}{)}{}}%
+ \xintifboolexpr{\Multik==0}{}{\xintifboolexpr{\Multil==0}{\xintifboolexpr{#2==0}{}{+}}{+}\xintifboolexpr{\Multik<0}{(}{}\AffichageEchange{\Multik}{0}{0}\xintifboolexpr{\Multik<0}{)}{}}%
+ \xintifboolexpr{\Multil==0}{}{+}\xintifboolexpr{\Multil<0}{(}{}\AffichageEchange{0}{\Multil}{0}\xintifboolexpr{\Multil<0}{)}{}%
\xdef\Multim{\fpeval{#2*#4+#3*#5}}%
\ifboolKV[ClesDistributivite]{Somme}{\xdef\SommeA{\fpeval{\SommeA+\Multij}}\xdef\SommeB{\fpeval{\SommeB+\Multim}}\xdef\SommeC{\fpeval{\SommeC+\Multik}}}{}%
\ifboolKV[ClesDistributivite]{Difference}{\xdef\SommeA{\fpeval{\SommeA-\Multij}}\xdef\SommeB{\fpeval{\SommeB-\Multim}}\xdef\SommeC{\fpeval{\SommeC-\Multik}}}{}%
}{}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=3}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==3}{%
\xintifboolexpr{\theNbCalculDistri>1}{\xintifboolexpr{\Multi<0}{(\AffichageEchange{\Multi}{0}{0})}{\AffichageEchange{\Multi}{0}{0}}}{\AffichageEchange{\Multi}{0}{0}}%
- \xintifboolexpr{\Multij=0}{}{\xintifboolexpr{\Multi=0}{}{+}\xintifboolexpr{\Multij<0}{(}{}\AffichageEchange{0}{\Multij}{0}\xintifboolexpr{\Multij<0}{)}{}}%
- \xintifboolexpr{\Multik=0}{}{\xintifboolexpr{\Multil=0}{\xintifboolexpr{#2=0}{}{+}}{+}\xintifboolexpr{\Multik<0}{(}{}\AffichageEchange{0}{\Multik}{0}\xintifboolexpr{\Multik<0}{)}{}}%
- \xintifboolexpr{\Multil=0}{}{+}\xintifboolexpr{\Multil<0}{(}{}\AffichageEchange{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}%
+ \xintifboolexpr{\Multij==0}{}{\xintifboolexpr{\Multi==0}{}{+}\xintifboolexpr{\Multij<0}{(}{}\AffichageEchange{0}{\Multij}{0}\xintifboolexpr{\Multij<0}{)}{}}%
+ \xintifboolexpr{\Multik==0}{}{\xintifboolexpr{\Multil==0}{\xintifboolexpr{#2==0}{}{+}}{+}\xintifboolexpr{\Multik<0}{(}{}\AffichageEchange{0}{\Multik}{0}\xintifboolexpr{\Multik<0}{)}{}}%
+ \xintifboolexpr{\Multil==0}{}{+}\xintifboolexpr{\Multil<0}{(}{}\AffichageEchange{0}{0}{\Multil}\xintifboolexpr{\Multil<0}{)}{}%
\xdef\Multim{\fpeval{#2*#5+#3*#4}}%
\ifboolKV[ClesDistributivite]{Somme}{\xdef\SommeA{\fpeval{\SommeA+\Multil}}\xdef\SommeB{\fpeval{\SommeB+\Multim}}\xdef\SommeC{\fpeval{\SommeC+\Multi}}}{}%
\ifboolKV[ClesDistributivite]{Difference}{\xdef\SommeA{\fpeval{\SommeA-\Multil}}\xdef\SommeB{\fpeval{\SommeB-\Multim}}\xdef\SommeC{\fpeval{\SommeC-\Multi}}}{}%
}{}%
}{}%fin etape3
% Etape 4
- \xintifboolexpr{\useKV[ClesDistributivite]{Etape}=4}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Etape}==4}{%
\xdef\Multi{\fpeval{#2*#4}}%
\xdef\Multij{\fpeval{#2*#5}}%
\xdef\Multik{\fpeval{#3*#4}}%
@@ -4046,59 +4033,59 @@
%% expressions \`a d\'evelopper
\xintifboolexpr{\theNbCalculDistri>1}{\setcounter{NbCalculDistri}{0}}{}%
\stepcounter{NbCalculDistri}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=1}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==1}{%
\xdef\Multim{\fpeval{#2*#4+#3*#5}}%
\ifboolKV[ClesDistributivite]{Oppose}{%
\xdef\Multiko{\fpeval{-\Multik}}%
\xdef\Multimo{\fpeval{-\Multim}}%
\xdef\Multijo{\fpeval{-\Multij}}%
- \xintifboolexpr{\Multiko=0}{}{\xintifboolexpr{\Multiko<0}{(}{}\Affichage{\Multiko}{0}{0}\xintifboolexpr{\Multiko<0}{)}{}}%
- \xintifboolexpr{\Multimo=0}{}{\xintifboolexpr{\Multimo>0}{+}{+(}\Affichage{0}{\Multimo}{0}\xintifboolexpr{\Multimo<0}{)}{}}%
- \xintifboolexpr{\Multijo=0}{}{\xintifboolexpr{\Multijo>0}{+}{+(}\Affichage{0}{0}{\Multijo}\xintifboolexpr{\Multijo<0}{)}{}}%
+ \xintifboolexpr{\Multiko==0}{}{\xintifboolexpr{\Multiko<0}{(}{}\Affichage{\Multiko}{0}{0}\xintifboolexpr{\Multiko<0}{)}{}}%
+ \xintifboolexpr{\Multimo==0}{}{\xintifboolexpr{\Multimo>0}{+}{+(}\Affichage{0}{\Multimo}{0}\xintifboolexpr{\Multimo<0}{)}{}}%
+ \xintifboolexpr{\Multijo==0}{}{\xintifboolexpr{\Multijo>0}{+}{+(}\Affichage{0}{0}{\Multijo}\xintifboolexpr{\Multijo<0}{)}{}}%
}{%
\xintifboolexpr{\theNbCalculDistri>1}{\xintifboolexpr{\Multik<0}{(\Affichage{\Multik}{0}{0})}{\Affichage{\Multik}{0}{0}}}{\Affichage{\Multik}{0}{0}}%
- \xintifboolexpr{\Multim=0}{}{%
+ \xintifboolexpr{\Multim==0}{}{%
\xintifboolexpr{\Multim>0}{+\Affichage{0}{\Multim}{0}}{-\Affichage{0}{\fpeval{-\Multim}}{0}}%
}%
- \xintifboolexpr{\Multij=0}{}{\xintifboolexpr{\Multij<0}{-\Affichage{0}{0}{\fpeval{-\Multij}}}{+\Affichage{0}{0}{\Multij}}}%
+ \xintifboolexpr{\Multij==0}{}{\xintifboolexpr{\Multij<0}{-\Affichage{0}{0}{\fpeval{-\Multij}}}{+\Affichage{0}{0}{\Multij}}}%
}%
\ifboolKV[ClesDistributivite]{Somme}{\xdef\SommeA{\fpeval{\SommeA+\Multik}}\xdef\SommeB{\fpeval{\SommeB+\Multim}}\xdef\SommeC{\fpeval{\SommeC+\Multij}}}{}%
\ifboolKV[ClesDistributivite]{Difference}{\xdef\SommeA{\fpeval{\SommeA-\Multik}}\xdef\SommeB{\fpeval{\SommeB-\Multim}}\xdef\SommeC{\fpeval{\SommeC-\Multij}}}{}%
}{}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=2}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==2}{%
\xdef\Multim{\fpeval{#2*#4+#3*#5}}%
\ifboolKV[ClesDistributivite]{Oppose}{%
\xdef\Multijo{\fpeval{-\Multij}}%
\xdef\Multimo{\fpeval{-\Multim}}%
\xdef\Multiko{\fpeval{-\Multik}}%
- \xintifboolexpr{\Multijo=0}{}{\xintifboolexpr{\Multijo<0}{(}{}\Affichage{\Multijo}{0}{0}\xintifboolexpr{\Multijo<0}{)}{}}%
- \xintifboolexpr{\Multimo=0}{}{\xintifboolexpr{\Multimo>0}{+}{+(}\Affichage{0}{\Multimo}{0}\xintifboolexpr{\Multimo<0}{)}{}}%
- \xintifboolexpr{\Multiko=0}{}{\xintifboolexpr{\Multiko>0}{+}{+(}\Affichage{0}{0}{\Multiko}\xintifboolexpr{\Multiko<0}{)}{}}%
+ \xintifboolexpr{\Multijo==0}{}{\xintifboolexpr{\Multijo<0}{(}{}\Affichage{\Multijo}{0}{0}\xintifboolexpr{\Multijo<0}{)}{}}%
+ \xintifboolexpr{\Multimo==0}{}{\xintifboolexpr{\Multimo>0}{+}{+(}\Affichage{0}{\Multimo}{0}\xintifboolexpr{\Multimo<0}{)}{}}%
+ \xintifboolexpr{\Multiko==0}{}{\xintifboolexpr{\Multiko>0}{+}{+(}\Affichage{0}{0}{\Multiko}\xintifboolexpr{\Multiko<0}{)}{}}%
}{%
\xintifboolexpr{\theNbCalculDistri>1}{\xintifboolexpr{\Multij<0}{(\Affichage{\Multij}{0}{0})}{\Affichage{\Multij}{0}{0}}}{\Affichage{\Multij}{0}{0}}%
- \xintifboolexpr{\Multim=0}{}{%
+ \xintifboolexpr{\Multim==0}{}{%
\xintifboolexpr{\Multim>0}{+\Affichage{0}{\Multim}{0}}{-\Affichage{0}{\fpeval{-\Multim}}{0}}%
}%
- \xintifboolexpr{\Multik=0}{}{\xintifboolexpr{\Multik<0}{-\Affichage{0}{0}{\fpeval{-\Multik}}}{+\Affichage{0}{0}{\Multik}}}%
+ \xintifboolexpr{\Multik==0}{}{\xintifboolexpr{\Multik<0}{-\Affichage{0}{0}{\fpeval{-\Multik}}}{+\Affichage{0}{0}{\Multik}}}%
}%
\ifboolKV[ClesDistributivite]{Somme}{\xdef\SommeA{\fpeval{\SommeA+\Multij}}\xdef\SommeB{\fpeval{\SommeB+\Multim}}\xdef\SommeC{\fpeval{\SommeC+\Multik}}}{}%
\ifboolKV[ClesDistributivite]{Difference}{\xdef\SommeA{\fpeval{\SommeA-\Multij}}\xdef\SommeB{\fpeval{\SommeB-\Multim}}\xdef\SommeC{\fpeval{\SommeC-\Multik}}}{}%
}{}%
- \xintifboolexpr{\useKV[ClesDistributivite]{Echange}=3}{%
+ \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==3}{%
\xdef\Multim{\fpeval{#2*#5+#3*#4}}%
\ifboolKV[ClesDistributivite]{Oppose}{%
\xdef\Multilo{\fpeval{-\Multil}}%
\xdef\Multimo{\fpeval{-\Multim}}%
\xdef\Multio{\fpeval{-\Multi}}%
- \xintifboolexpr{\Multilo=0}{}{\xintifboolexpr{\Multilo<0}{(}{}\Affichage{\Multilo}{0}{0}\xintifboolexpr{\Multilo<0}{)}{}}%
- \xintifboolexpr{\Multimo=0}{}{\xintifboolexpr{\Multimo>0}{+}{+(}\Affichage{0}{\Multimo}{0}\xintifboolexpr{\Multimo<0}{)}{}}%
- \xintifboolexpr{\Multio=0}{}{\xintifboolexpr{\Multio>0}{+}{+(}\Affichage{0}{0}{\Multio}\xintifboolexpr{\Multio<0}{)}{}}%
+ \xintifboolexpr{\Multilo==0}{}{\xintifboolexpr{\Multilo<0}{(}{}\Affichage{\Multilo}{0}{0}\xintifboolexpr{\Multilo<0}{)}{}}%
+ \xintifboolexpr{\Multimo==0}{}{\xintifboolexpr{\Multimo>0}{+}{+(}\Affichage{0}{\Multimo}{0}\xintifboolexpr{\Multimo<0}{)}{}}%
+ \xintifboolexpr{\Multio==0}{}{\xintifboolexpr{\Multio>0}{+}{+(}\Affichage{0}{0}{\Multio}\xintifboolexpr{\Multio<0}{)}{}}%
}{%
\xintifboolexpr{\theNbCalculDistri>1}{\xintifboolexpr{\Multil<0}{(\Affichage{\Multil}{0}{0})}{\Affichage{\Multil}{0}{0}}}{\Affichage{\Multil}{0}{0}}%
- \xintifboolexpr{\Multim=0}{}{%
+ \xintifboolexpr{\Multim==0}{}{%
\xintifboolexpr{\Multim>0}{+\Affichage{0}{\Multim}{0}}{-\Affichage{0}{\fpeval{-\Multim}}{0}}%
}%
- \xintifboolexpr{\Multi=0}{}{\xintifboolexpr{\Multi<0}{-\Affichage{0}{0}{\fpeval{-\Multi}}}{+\Affichage{0}{0}{\Multi}}}%
+ \xintifboolexpr{\Multi==0}{}{\xintifboolexpr{\Multi<0}{-\Affichage{0}{0}{\fpeval{-\Multi}}}{+\Affichage{0}{0}{\Multi}}}%
}
\ifboolKV[ClesDistributivite]{Somme}{\xdef\SommeA{\fpeval{\SommeA+\Multil}}\xdef\SommeB{\fpeval{\SommeB+\Multim}}\xdef\SommeC{\fpeval{\SommeC+\Multi}}}{}%
\ifboolKV[ClesDistributivite]{Difference}{\xdef\SommeA{\fpeval{\SommeA-\Multil}}\xdef\SommeB{\fpeval{\SommeB-\Multim}}\xdef\SommeC{\fpeval{\SommeC-\Multi}}}{}%
@@ -5646,7 +5633,7 @@ vardef Positions(expr Step)=
}%
% On choisit \'eventuellement le calcul \`a faire s'il y en a plusieurs.
\xdef\CompteurCalcul{\useKV[ClesThales]{ChoixCalcul}}%
- \xintifboolexpr{\CompteurCalcul>0}{\xintifboolexpr{\CompteurCalcul=1}{\xdef\cmya{0}\xdef\cmza{0}}{\xintifboolexpr{\CompteurCalcul=2}{\xdef\cmxa{0}\xdef\cmza{0}}{\xdef\cmxa{0}\xdef\cmya{0}}}}{}%
+ \xintifboolexpr{\CompteurCalcul>0}{\xintifboolexpr{\CompteurCalcul==1}{\xdef\cmya{0}\xdef\cmza{0}}{\xintifboolexpr{\CompteurCalcul==2}{\xdef\cmxa{0}\xdef\cmza{0}}{\xdef\cmxa{0}\xdef\cmya{0}}}}{}%
%%on fait les calculs
\begin{align*}
%Premier compteur \xxx
@@ -5863,7 +5850,7 @@ vardef Positions(expr Step)=
}%
% On choisit \'eventuellement le calcul \`a faire s'il y en a plusieurs.
\xdef\CompteurCalcul{\useKV[ClesThales]{ChoixCalcul}}%
- \xintifboolexpr{\CompteurCalcul>0}{\xintifboolexpr{\CompteurCalcul=1}{\xdef\cmya{0}\xdef\cmza{0}}{\xintifboolexpr{\CompteurCalcul=2}{\xdef\cmxa{0}\xdef\cmza{0}}{\xdef\cmxa{0}\xdef\cmya{0}}}}%
+ \xintifboolexpr{\CompteurCalcul>0}{\xintifboolexpr{\CompteurCalcul==1}{\xdef\cmya{0}\xdef\cmza{0}}{\xintifboolexpr{\CompteurCalcul==2}{\xdef\cmxa{0}\xdef\cmza{0}}{\xdef\cmxa{0}\xdef\cmya{0}}}}%
%%on fait les calculs
\begin{align*}
%Premier compteur \xxx
@@ -6121,7 +6108,7 @@ vardef Positions(expr Step)=
\begin{align*}
\num{#3}\times\num{#6}&=\num{\fpeval{#3*#6}}&&&\num{#4}\times\num{#5}&=\num{\fpeval{#4*#5}}
\end{align*}
- \xintifboolexpr{\NumA = \NumB}{Comme les produits en croix sont
+ \xintifboolexpr{\NumA == \NumB}{Comme les produits en croix sont
\'egaux, alors
$\dfrac{\NomA\NomM}{\NomA\NomB}=\dfrac{\NomA\NomN}{\NomA\NomC}$.\\[0.5em]%
}{%
@@ -6131,20 +6118,20 @@ vardef Positions(expr Step)=
}{%
\[\left.
\begin{array}{l}
- \dfrac{\NomA\NomM}{\NomA\NomB}=\dfrac{\num{#3}}{\num{#4}}\ifx\bla#7\bla\ifboolKV[ClesThales]{Simplification}{\PGCD{#3}{#4}\xintifboolexpr{\pgcd=1}{%il faut regarder si on doit continuer avec le PPCM...
- \PGCD{#5}{#6}\xintifboolexpr{\pgcd>1}{\xdef\DenomSimpaa{\fpeval{#6/\pgcd}}\PPCM{#4}{\DenomSimpaa}\xintifboolexpr{\ppcm=#4}{}{=\dfrac{#3\times\num{\fpeval{\ppcm/#4}}}{#4\times\num{\fpeval{\ppcm/#4}}}=\dfrac{\num{\fpeval{#3*\ppcm/#4}}}{\num{\fpeval{\ppcm}}}}}{}%
- }{=\displaystyle\Simplification[All]{#3}{#4}\PGCD{#3}{#4}\xdef\NumSimp{\fpeval{#3/\pgcd}}\xdef\DenomSimp{\fpeval{#4/\pgcd}}\PGCD{#5}{#6}\xdef\NumSimpa{\fpeval{#5/\pgcd}}\xdef\DenomSimpa{\fpeval{#6/\pgcd}}\PPCM{\DenomSimp}{\DenomSimpa}\xintifboolexpr{\fpeval{\the\ppcm/\DenomSimp}=1}{}{=\dfrac{\num{\NumSimp}\times\num{\fpeval{\the\ppcm/\DenomSimp}}}{\num{\DenomSimp}\times\PPCM{\DenomSimp}{\DenomSimpa}\num{\fpeval{\the\ppcm/\DenomSimp}}}=\dfrac{\PPCM{\DenomSimp}{\DenomSimpa}\num{\fpeval{\NumSimp*\the\ppcm/\DenomSimp}}}{\PPCM{\DenomSimp}{\DenomSimpa}\num{\the\ppcm}}}}}{\PPCM{#4}{#6}\xintifboolexpr{\fpeval{\the\ppcm/#4}=1}{}{=\dfrac{\num{#3}\times\num{\fpeval{\the\ppcm/#4}}}{\num{#4}\times\PPCM{#4}{#6}\num{\fpeval{\the\ppcm/#4}}}=\dfrac{\PPCM{#4}{#6}\num{\fpeval{#3*\the\ppcm/#4}}}{\PPCM{#4}{#6}\num{\the\ppcm}}}}\xdef\NumA{\fpeval{#3*#6}}\else%
- \xintifboolexpr{#7=1}{}{=\dfrac{\num{#3}\times\num{#7}}{\num{#4}\times\num{#7}}=\dfrac{\num{\fpeval{#3*#7}}}{\num{\fpeval{#4*#7}}}}\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\xintifboolexpr{\the\ppcm=\fpeval{#4*#7}}{}{=\dfrac{\num{\fpeval{#3*#7}}\times\num{\fpeval{\the\ppcm/(#4*#7)}}}{\num{\fpeval{#4*#7}}\times\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{\the\ppcm/(#4*#7)}}}=\dfrac{\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{#3*\the\ppcm/#4}}}{\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{\the\ppcm}}}}\xdef\NumA{\fpeval{#3*#7*#6*#8}}
+ \dfrac{\NomA\NomM}{\NomA\NomB}=\dfrac{\num{#3}}{\num{#4}}\ifx\bla#7\bla\ifboolKV[ClesThales]{Simplification}{\PGCD{#3}{#4}\xintifboolexpr{\pgcd==1}{%il faut regarder si on doit continuer avec le PPCM...
+ \PGCD{#5}{#6}\xintifboolexpr{\pgcd>1}{\xdef\DenomSimpaa{\fpeval{#6/\pgcd}}\PPCM{#4}{\DenomSimpaa}\xintifboolexpr{\ppcm==#4}{}{=\dfrac{#3\times\num{\fpeval{\ppcm/#4}}}{#4\times\num{\fpeval{\ppcm/#4}}}=\dfrac{\num{\fpeval{#3*\ppcm/#4}}}{\num{\fpeval{\ppcm}}}}}{}%
+ }{=\displaystyle\Simplification[All]{#3}{#4}\PGCD{#3}{#4}\xdef\NumSimp{\fpeval{#3/\pgcd}}\xdef\DenomSimp{\fpeval{#4/\pgcd}}\PGCD{#5}{#6}\xdef\NumSimpa{\fpeval{#5/\pgcd}}\xdef\DenomSimpa{\fpeval{#6/\pgcd}}\PPCM{\DenomSimp}{\DenomSimpa}\xintifboolexpr{\fpeval{\the\ppcm/\DenomSimp}==1}{}{=\dfrac{\num{\NumSimp}\times\num{\fpeval{\the\ppcm/\DenomSimp}}}{\num{\DenomSimp}\times\PPCM{\DenomSimp}{\DenomSimpa}\num{\fpeval{\the\ppcm/\DenomSimp}}}=\dfrac{\PPCM{\DenomSimp}{\DenomSimpa}\num{\fpeval{\NumSimp*\the\ppcm/\DenomSimp}}}{\PPCM{\DenomSimp}{\DenomSimpa}\num{\the\ppcm}}}}}{\PPCM{#4}{#6}\xintifboolexpr{\fpeval{\the\ppcm/#4}==1}{}{=\dfrac{\num{#3}\times\num{\fpeval{\the\ppcm/#4}}}{\num{#4}\times\PPCM{#4}{#6}\num{\fpeval{\the\ppcm/#4}}}=\dfrac{\PPCM{#4}{#6}\num{\fpeval{#3*\the\ppcm/#4}}}{\PPCM{#4}{#6}\num{\the\ppcm}}}}\xdef\NumA{\fpeval{#3*#6}}\else%
+ \xintifboolexpr{#7==1}{}{=\dfrac{\num{#3}\times\num{#7}}{\num{#4}\times\num{#7}}=\dfrac{\num{\fpeval{#3*#7}}}{\num{\fpeval{#4*#7}}}}\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\xintifboolexpr{\the\ppcm==\fpeval{#4*#7}}{}{=\dfrac{\num{\fpeval{#3*#7}}\times\num{\fpeval{\the\ppcm/(#4*#7)}}}{\num{\fpeval{#4*#7}}\times\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{\the\ppcm/(#4*#7)}}}=\dfrac{\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{#3*\the\ppcm/#4}}}{\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{\the\ppcm}}}}\xdef\NumA{\fpeval{#3*#7*#6*#8}}
\fi
\\
\\
\dfrac{\NomA\NomN}{\NomA\NomC}=\dfrac{\num{#5}}{\num{#6}}%
\ifx\bla#8\bla%
- \ifboolKV[ClesThales]{Simplification}{\PGCD{#5}{#6}\xintifboolexpr{\pgcd=1}{%il faut regarder si on doit continuer avec le PPCM...
- \PGCD{#3}{#4}\xintifboolexpr{\pgcd>1}{\xdef\DenomSimpaa{\fpeval{#4/\pgcd}}\PPCM{#6}{\DenomSimpaa}\xintifboolexpr{\ppcm=#6}{}{=\dfrac{#5\times\num{\fpeval{\ppcm/#6}}}{#6\times\num{\fpeval{\ppcm/#6}}}=\dfrac{\num{\fpeval{#5*\ppcm/#6}}}{\num{\fpeval{\ppcm}}}}}{}%
- }{=\displaystyle\Simplification[All]{#5}{#6}\PGCD{#5}{#6}\xdef\NumSimp{\fpeval{#5/\pgcd}}\xdef\DenomSimp{\fpeval{#6/\pgcd}}\PGCD{#3}{#4}\xdef\NumSimpa{\fpeval{#3/\pgcd}}\xdef\DenomSimpa{\fpeval{#4/\pgcd}}\PPCM{\DenomSimp}{\DenomSimpa}\xintifboolexpr{\fpeval{\the\ppcm/\DenomSimp}=1}{}{=\dfrac{\num{\NumSimp}\times\num{\fpeval{\the\ppcm/\DenomSimp}}}{\num{\DenomSimp}\times\PPCM{\DenomSimp}{\DenomSimpa}\num{\fpeval{\the\ppcm/\DenomSimp}}}=\dfrac{\PPCM{\DenomSimp}{\DenomSimpa}\num{\fpeval{\NumSimp*\the\ppcm/\DenomSimp}}}{\PPCM{\DenomSimp}{\DenomSimpa}\num{\the\ppcm}}}}}{\PPCM{#4}{#6}\xintifboolexpr{\fpeval{\the\ppcm/#6}=1}{}{=\dfrac{\num{#5}\times\num{\fpeval{\the\ppcm/#6}}}{\num{#6}\times\PPCM{#4}{#6}\num{\fpeval{\the\ppcm/#6}}}=\dfrac{\PPCM{#4}{#6}\num{\fpeval{#5*\the\ppcm/#6}}}{\PPCM{#4}{#6}\num{\the\ppcm}}}}\xdef\NumB{\fpeval{#5*#4}}%
+ \ifboolKV[ClesThales]{Simplification}{\PGCD{#5}{#6}\xintifboolexpr{\pgcd==1}{%il faut regarder si on doit continuer avec le PPCM...
+ \PGCD{#3}{#4}\xintifboolexpr{\pgcd>1}{\xdef\DenomSimpaa{\fpeval{#4/\pgcd}}\PPCM{#6}{\DenomSimpaa}\xintifboolexpr{\ppcm==#6}{}{=\dfrac{#5\times\num{\fpeval{\ppcm/#6}}}{#6\times\num{\fpeval{\ppcm/#6}}}=\dfrac{\num{\fpeval{#5*\ppcm/#6}}}{\num{\fpeval{\ppcm}}}}}{}%
+ }{=\displaystyle\Simplification[All]{#5}{#6}\PGCD{#5}{#6}\xdef\NumSimp{\fpeval{#5/\pgcd}}\xdef\DenomSimp{\fpeval{#6/\pgcd}}\PGCD{#3}{#4}\xdef\NumSimpa{\fpeval{#3/\pgcd}}\xdef\DenomSimpa{\fpeval{#4/\pgcd}}\PPCM{\DenomSimp}{\DenomSimpa}\xintifboolexpr{\fpeval{\the\ppcm/\DenomSimp}==1}{}{=\dfrac{\num{\NumSimp}\times\num{\fpeval{\the\ppcm/\DenomSimp}}}{\num{\DenomSimp}\times\PPCM{\DenomSimp}{\DenomSimpa}\num{\fpeval{\the\ppcm/\DenomSimp}}}=\dfrac{\PPCM{\DenomSimp}{\DenomSimpa}\num{\fpeval{\NumSimp*\the\ppcm/\DenomSimp}}}{\PPCM{\DenomSimp}{\DenomSimpa}\num{\the\ppcm}}}}}{\PPCM{#4}{#6}\xintifboolexpr{\fpeval{\the\ppcm/#6}==1}{}{=\dfrac{\num{#5}\times\num{\fpeval{\the\ppcm/#6}}}{\num{#6}\times\PPCM{#4}{#6}\num{\fpeval{\the\ppcm/#6}}}=\dfrac{\PPCM{#4}{#6}\num{\fpeval{#5*\the\ppcm/#6}}}{\PPCM{#4}{#6}\num{\the\ppcm}}}}\xdef\NumB{\fpeval{#5*#4}}%
\else%
- \xintifboolexpr{#8=1}{}{=\dfrac{\num{#5}\times\num{#8}}{\num{#6}\times\num{#8}}=\dfrac{\num{\fpeval{#5*#8}}}{\num{\fpeval{#6*#8}}}}\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\xintifboolexpr{\the\ppcm=\fpeval{#6*#8}}{}{=\dfrac{\num{\fpeval{#5*#8}}\times\num{\fpeval{\the\ppcm/(#6*#8)}}}{\num{\fpeval{#6*#8}}\times\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{\the\ppcm/(#6*#8)}}}=\dfrac{\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{#5*\the\ppcm/#6}}}{\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{\the\ppcm}}}
+ \xintifboolexpr{#8==1}{}{=\dfrac{\num{#5}\times\num{#8}}{\num{#6}\times\num{#8}}=\dfrac{\num{\fpeval{#5*#8}}}{\num{\fpeval{#6*#8}}}}\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\xintifboolexpr{\the\ppcm==\fpeval{#6*#8}}{}{=\dfrac{\num{\fpeval{#5*#8}}\times\num{\fpeval{\the\ppcm/(#6*#8)}}}{\num{\fpeval{#6*#8}}\times\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{\the\ppcm/(#6*#8)}}}=\dfrac{\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{#5*\the\ppcm/#6}}}{\xdef\NumC{\fpeval{#4*#7}}\xdef\NumD{\fpeval{#6*#8}}\PPCM{\NumC}{\NumD}\num{\fpeval{\the\ppcm}}}
}\xdef\NumB{\fpeval{#5*#8*#4*#7}}
\fi\\
\end{array}
@@ -6164,7 +6151,7 @@ vardef Positions(expr Step)=
th\'eor\`eme de Thal\`es.\else%
Donc les droites $(\NomM\NomN)$ et $(\NomB\NomC)$ ne sont pas parall\`eles.\fi
}{%
- \xintifboolexpr{\NumA=\NumB}{%
+ \xintifboolexpr{\NumA==\NumB}{%
De plus, les points $\NomA$, $\NomM$, $\NomB$ sont align\'es dans
le m\^eme ordre que les points $\NomA$, $\NomN$, $\NomC$. Donc les
droites $(\NomM\NomN)$ et $(\NomB\NomC)$ sont parall\`eles d'apr\`es
@@ -6517,21 +6504,27 @@ vardef Positions(expr Step)=
label(btex #3 etex,1.15[O,C]);
label(btex ? etex,A+0.95u*unitvector(I-A));
decalage:=3mm;
+ if #6>0:
if angle(1/2[A,C]-B)>0:
label(btex \num{#6} etex,1.2[B,1/2[A,C]]);
else:
label(btex \num{#6} etex,1.2[B,1/2[A,C]]);
fi;
+ fi;
+ if #4>0:
if angle(1/2[B,C]-A)>0:
label(btex \num{#4} etex,1/2[B,C]-decalage*(unitvector(A-B)));
else:
label(btex \num{#4} etex,1/2[B,C]-decalage*(unitvector(A-B)));
- fi;
+ fi;
+ fi;
+ if #5>0:
if angle(1/2[A,B]-C)>0:
label(btex \num{#5} etex,1/2[A,B]-decalage*(unitvector(C-B)));
else:
label(btex \num{#5} etex,1/2[A,B]-decalage*(unitvector(C-B)));
fi;
+ fi;
\end{mplibcode}
\mplibcodeinherit{disable}
\else
@@ -6579,21 +6572,27 @@ vardef Positions(expr Step)=
label(btex #3 etex,1.15[O,C]);
label(btex ? etex,A+0.95u*unitvector(I-A));
decalage:=3mm;
+ if #6>0:
if angle(1/2[A,C]-B)>0:
label(btex \num{#6} etex,1.2[B,1/2[A,C]]);
else:
label(btex \num{#6} etex,1.2[B,1/2[A,C]]);
fi;
+ fi;
+ if #4>0:
if angle(1/2[B,C]-A)>0:
label(btex \num{#4} etex,1/2[B,C]-decalage*(unitvector(A-B)));
else:
label(btex \num{#4} etex,1/2[B,C]-decalage*(unitvector(A-B)));
- fi;
+ fi;
+ fi;
+ if #5>0:
if angle(1/2[A,B]-C)>0:
label(btex \num{#5} etex,1/2[A,B]-decalage*(unitvector(C-B)));
else:
label(btex \num{#5} etex,1/2[A,B]-decalage*(unitvector(C-B)));
fi;
+ fi;
\end{mpost}
\fi
}
@@ -6809,13 +6808,13 @@ vardef Positions(expr Step)=
\ifboolKV[ClesTrigo]{FigureSeule}{%
\ifx\bla#5\bla%
\ifboolKV[ClesTrigo]{Cosinus}{%
- \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{}{#3}{#4}{\useKV[ClesTrigo]{Angle}}
+ \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{-1}{#3}{#4}{\useKV[ClesTrigo]{Angle}}
}{}%
\ifboolKV[ClesTrigo]{Sinus}{%
- \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{#3}{}{#4}{\useKV[ClesTrigo]{Angle}}
+ \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{#3}{-1}{#4}{\useKV[ClesTrigo]{Angle}}
}{}%
\ifboolKV[ClesTrigo]{Tangente}{%
- \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{#3}{#4}{}{\useKV[ClesTrigo]{Angle}}
+ \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{#3}{#4}{-1}{\useKV[ClesTrigo]{Angle}}
}{}%
\else%}{%figure pour calculer une longueur
\ifboolKV[ClesTrigo]{Cosinus}{%
@@ -6847,17 +6846,17 @@ vardef Positions(expr Step)=
\ifx\bla#5\bla%
\ifboolKV[ClesTrigo]{Cosinus}{%
\begin{center}
- \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{}{#3}{#4}{\useKV[ClesTrigo]{Angle}}
+ \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{-1}{#3}{#4}{\useKV[ClesTrigo]{Angle}}
\end{center}
}{}%
\ifboolKV[ClesTrigo]{Sinus}{%
\begin{center}
- \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{#3}{}{#4}{\useKV[ClesTrigo]{Angle}}
+ \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{#3}{-1}{#4}{\useKV[ClesTrigo]{Angle}}
\end{center}
}{}%
\ifboolKV[ClesTrigo]{Tangente}{%
\begin{center}
- \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{#3}{#4}{}{\useKV[ClesTrigo]{Angle}}
+ \MPFigTrigoAngle{\NomA}{\NomB}{\NomC}{#3}{#4}{-1}{\useKV[ClesTrigo]{Angle}}
\end{center}
}{}%
\else%}{%figure pour calculer une longueur
@@ -6921,7 +6920,7 @@ vardef Positions(expr Step)=
FreqVide=false,AngVide=false,ECCVide=false,TotalVide=false,Sondage=false,%
Tableau=false,Stretch=1,Frequence=false,EffectifTotal=false,%
Etendue=false,Moyenne=false,SET=false,Mediane=false,Total=false,Concret=false,%
-Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angle=false,SemiAngle=false,Qualitatif=false,TableauVide=false,Graphique=false,Batons=true,Unitex=0.5,Unitey=0.5,Rayon=3cm,AffichageAngle=false,Liste=false,ECC=false,Coupure=10,CouleurTab=gray!15,ListeCouleurs={white},Hachures=false,Inverse=false,AbscisseRotation=false}
+Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Grille=false,Origine=0,Angle=false,SemiAngle=false,Qualitatif=false,TableauVide=false,Graphique=false,Batons=true,Pasx=1,Pasy=1,Unitex=0.5,Unitey=0.5,Rayon=3cm,AffichageAngle=false,Liste=false,ECC=false,Coupure=10,CouleurTab=gray!15,ListeCouleurs={white},Hachures=false,Inverse=false,AbscisseRotation=false,Representation=false}
% La construction du tableau
\def\addtotok#1#2{#1\expandafter{\the#1#2}}
@@ -7159,6 +7158,20 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
endfor;
enddef;
toto(#4);
+ boolean Grille;
+ Grille:=\useKV[ClesStat]{Grille};
+ Pasx:=\useKV[ClesStat]{Pasx};
+ Pasy:=\useKV[ClesStat]{Pasy};
+ if Grille:
+ drawoptions(withcolor 0.75white);
+ for k=0 step Pasx until ((maxx+1)):
+ trace (k*unitex,0)--(k*unitex,unitey*(maxy+1));
+ endfor;
+ for k=0 step Pasy until ((maxy+1)):
+ trace (0,k*unitey)--(unitex*(maxx+1),k*unitey);
+ endfor;
+ drawoptions();
+ fi;
for k=1 upto n:
draw A[k]--P[k] withpen pencircle scaled 2bp;
draw B[k]--P[k] dashed evenly;
@@ -7172,7 +7185,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\mpxcommands{%
\setKV[ClesStat]{#1}%
}
- \begin{mpost}
+ \begin{mpost}[mpsettings={boolean Grille; Grille:=\useKV[ClesStat]{Grille}; Pasx:=\useKV[ClesStat]{Pasx}; Pasy:=\useKV[ClesStat]{Pasy};}]
maxx:=0;
maxy:=0;
unitex:=#2*cm;
@@ -7202,6 +7215,16 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
endfor;
enddef;
toto(#4);
+ if Grille:
+ drawoptions(withcolor 0.75white);
+ for k=0 step Pasx until ((maxx+1)):
+ trace (k*unitex,0)--(k*unitex,unitey*(maxy+1));
+ endfor;
+ for k=0 step Pasy until ((maxy+1)):
+ trace (0,k*unitey)--(unitex*(maxx+1),k*unitey);
+ endfor;
+ drawoptions();
+ fi;
for k=1 upto n:
draw A[k]--P[k] withpen pencircle scaled 2bp;
draw B[k]--P[k] dashed evenly;
@@ -7245,6 +7268,20 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
endfor;
enddef;
toto(#4);
+ boolean Grille;
+ Grille:=\useKV[ClesStat]{Grille};
+ Pasx:=\useKV[ClesStat]{Pasx};
+ Pasy:=\useKV[ClesStat]{Pasy};
+ if Grille:
+ drawoptions(withcolor 0.75white);
+ for k=0 step Pasx until ((n+1)):
+ trace (k*unitex,0)--(k*unitex,unitey*(maxy+1));
+ endfor;
+ for k=0 step Pasy until ((maxy+1)):
+ trace (0,k*unitey)--(unitex*(n+1),k*unitey);
+ endfor;
+ drawoptions();
+ fi;
for k=0 upto n-1:
draw A[k]--P[k] withpen pencircle scaled 2bp;
draw B[k]--P[k] dashed evenly;
@@ -7258,7 +7295,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\mpxcommands{%
\setKV[ClesStat]{#1}%
}
- \begin{mpost}
+ \begin{mpost}[mpsettings={boolean Grille; Grille:=\useKV[ClesStat]{Grille}; Pasx:=\useKV[ClesStat]{Pasx}; Pasy:=\useKV[ClesStat]{Pasy};}]
maxy:=0;
unitex:=#2*cm;
unitey:=#3*cm;
@@ -7285,6 +7322,16 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
endfor;
enddef;
toto(#4);
+ if Grille:
+ drawoptions(withcolor 0.75white);
+ for k=0 step Pasx until ((n+1)):
+ trace (k*unitex,0)--(k*unitex,unitey*(maxy+1));
+ endfor;
+ for k=0 step Pasy until ((maxy+1)):
+ trace (0,k*unitey)--(unitex*(n+1),k*unitey);
+ endfor;
+ drawoptions();
+ fi;
for k=0 upto n-1:
draw A[k]--P[k] withpen pencircle scaled 2bp;
draw B[k]--P[k] dashed evenly;
@@ -7570,18 +7617,26 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\newcommand\Stat[2][]{%
\useKVdefault[ClesStat]%
\setKV[ClesStat]{#1}%
- \ifboolKV[ClesStat]{Liste}{%
- \setsepchar{,}\ignoreemptyitems%
- \readlist*\Liste{#2}%
- \xdef\foo{}%
- \setsepchar[*]{,*/}\ignoreemptyitems%
- \xintFor* ##1 in {\xintSeq {1}{\Listelen}}\do{%
- \xdef\foo{\foo 1/\Liste[##1],}%
- }%
- \readlist*\ListeComplete{\foo}%
- \setKV[ClesStat]{Qualitatif}%
+ \ifboolKV[ClesStat]{Representation}{%
+ \setKV[TraceG]{Xmin=0,Ymin=0}%
+ \setKV[TraceG]{#1}%
+ \readlist*\ListePointsPlaces{#2}%
+ \newtoks\toklistepoint%
+ \foreachitem\compteur\in\ListePointsPlaces{\expandafter\Updatetoks\compteur\nil}%
+ \MPPlacePoint[#1]{\the\toklistepoint}%
}{%
- \ifboolKV[ClesStat]{Sondage}{%
+ \ifboolKV[ClesStat]{Liste}{%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\Liste{#2}%
+ \xdef\foo{}%
+ \setsepchar[*]{,*/}\ignoreemptyitems%
+ \xintFor* ##1 in {\xintSeq {1}{\Listelen}}\do{%
+ \xdef\foo{\foo 1/\Liste[##1],}%
+ }%
+ \readlist*\ListeComplete{\foo}%
+ \setKV[ClesStat]{Qualitatif}%
+ }{%
+ \ifboolKV[ClesStat]{Sondage}{%
\setsepchar{,}\ignoreemptyitems%
\readlist*\Liste{#2}%
% "liste vide"
@@ -7750,7 +7805,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\begin{center}
\begin{minipage}{0.9\linewidth}
\DTLforeach*{mtdb}{\numeroDonnee=Numeric}{\num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\DTLiflastrow{.}{;
- }\nbdonnees=\fpeval{\nbdonnees+1}\modulo{\nbdonnees}{\useKV[ClesStat]{Coupure}}\xintifboolexpr{\remainder=0}{\\}{}}
+ }\nbdonnees=\fpeval{\nbdonnees+1}\modulo{\nbdonnees}{\useKV[ClesStat]{Coupure}}\xintifboolexpr{\remainder==0}{\\}{}}
\end{minipage}
\end{center}%
\medskip%
@@ -7890,6 +7945,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
}{}%
}%
}%
+}
%%%
% Radar
@@ -8116,7 +8172,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
%%%
% Equations
%%%
-\setKVdefault[ClesEquation]{Ecart=0.5,Fleches=false,FlecheDiv=false,Laurent=false,Decomposition=false,Terme=false,Composition=false,Symbole=false,Entier=false,Lettre=x,Solution=false,LettreSol=true,Bloc=false,Simplification=false,CouleurTerme=black,CouleurCompo=black,CouleurSous=red,CouleurSymbole=orange,Verification=false,Nombre=0,Egalite=false,Produit=false,Facteurs=false,Carre=false,Exact=false,Pose=false,Equivalence=false}
+\setKVdefault[ClesEquation]{Ecart=0.5,Fleches=false,FlecheDiv=false,Laurent=false,Decomposition=false,Terme=false,Composition=false,Symbole=false,Decimal=false,Entier=false,Lettre=x,Solution=false,LettreSol=true,Bloc=false,Simplification=false,CouleurTerme=black,CouleurCompo=black,CouleurSous=red,CouleurSymbole=orange,Verification=false,Nombre=0,Egalite=false,Produit=false,Facteurs=false,Carre=false,Exact=false,Pose=false,Equivalence=false}
\newcommand\rightcomment[4]%
{\begin{tikzpicture}[remember picture,overlay]
@@ -8285,7 +8341,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\setKV[ClesEquation]{#1}%
\xintifboolexpr{#2<0}{%
Comme $\num{#2}$ est n\'egatif, alors l'\'equation $\useKV[ClesEquation]{Lettre}^2=\num{#2}$ n'a aucune solution.%
- }{\xintifboolexpr{#2=0}{%
+ }{\xintifboolexpr{#2==0}{%
L'\'equation $\useKV[ClesEquation]{Lettre}^2=0$ a une unique solution : $\useKV[ClesEquation]{Lettre}=0$.%
}{%
Comme \num{#2} est positif, alors l'\'equation $\useKV[ClesEquation]{Lettre}^2=\num{#2}$ a deux solutions :%
@@ -8305,24 +8361,24 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\ifboolKV[ClesEquation]{Equivalence}{%
\[\Distri{#2}{#3}{#4}{#5}=0\]
\begin{align*}%
- &\makebox[0pt]{$\Longleftrightarrow$}&\xintifboolexpr{#3=0}{\xintifboolexpr{#2=1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}}{\xintifboolexpr{#2=1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}&=0&\quad&\makebox[0pt]{ou}\quad&\xintifboolexpr{#5=0}{\xintifboolexpr{#4=1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}}{\xintifboolexpr{#4=1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#5>0}{+\num{#5}}{-\num{\fpeval{0-#5}}}}&=0\\
- &\makebox[0pt]{$\Longleftrightarrow$}&\xintifboolexpr{#3=0}{\xdef\Coeffa{1}\xdef\Coeffb{\fpeval{0-#3}}\xintifboolexpr{#2=1}{&}{\useKV[ClesEquation]{Lettre}&=0}}{\xdef\Coeffa{#2}\xdef\Coeffb{\fpeval{0-#3}}\xintifboolexpr{\Coeffa=1}{}{\num{\Coeffa}}\useKV[ClesEquation]{Lettre}&=\num{\Coeffb}}&&&\xintifboolexpr{#5=0}{\xdef\Coeffc{1}\xdef\Coeffd{\fpeval{0-#5}}\xintifboolexpr{#4=1}{&}{\useKV[ClesEquation]{Lettre}&=0}}{\xdef\Coeffc{#4}\xdef\Coeffd{\fpeval{0-#5}}\xintifboolexpr{\Coeffc=1}{}{\num{\Coeffc}}\useKV[ClesEquation]{Lettre}&=\num{\Coeffd}}%\\
- \xintifboolexpr{\Coeffa=1 'and' \Coeffc=1}{}{\\%\ifnum\cmtd>1
- &\makebox[0pt]{$\Longleftrightarrow$}&\xintifboolexpr{\Coeffa=1}{&}{\useKV[ClesEquation]{Lettre}&=\frac{\num{\Coeffb}}{\num{\Coeffa}}}\xintifboolexpr{\Coeffc=1}{}{&&&\useKV[ClesEquation]{Lettre}&=\frac{\num{\Coeffd}}{\num{\Coeffc}}}
+ &\makebox[0pt]{$\Longleftrightarrow$}&\xintifboolexpr{#3==0}{\xintifboolexpr{#2==1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}}{\xintifboolexpr{#2==1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}&=0&\quad&\makebox[0pt]{ou}\quad&\xintifboolexpr{#5==0}{\xintifboolexpr{#4==1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}}{\xintifboolexpr{#4==1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#5>0}{+\num{#5}}{-\num{\fpeval{0-#5}}}}&=0\\
+ &\makebox[0pt]{$\Longleftrightarrow$}&\xintifboolexpr{#3==0}{\xdef\Coeffa{1}\xdef\Coeffb{\fpeval{0-#3}}\xintifboolexpr{#2==1}{&}{\useKV[ClesEquation]{Lettre}&=0}}{\xdef\Coeffa{#2}\xdef\Coeffb{\fpeval{0-#3}}\xintifboolexpr{\Coeffa==1}{}{\num{\Coeffa}}\useKV[ClesEquation]{Lettre}&=\num{\Coeffb}}&&&\xintifboolexpr{#5==0}{\xdef\Coeffc{1}\xdef\Coeffd{\fpeval{0-#5}}\xintifboolexpr{#4==1}{&}{\useKV[ClesEquation]{Lettre}&=0}}{\xdef\Coeffc{#4}\xdef\Coeffd{\fpeval{0-#5}}\xintifboolexpr{\Coeffc==1}{}{\num{\Coeffc}}\useKV[ClesEquation]{Lettre}&=\num{\Coeffd}}%\\
+ \xintifboolexpr{\Coeffa==1 'and' \Coeffc==1}{}{\\%\ifnum\cmtd>1
+ &\makebox[0pt]{$\Longleftrightarrow$}&\xintifboolexpr{\Coeffa==1}{&}{\useKV[ClesEquation]{Lettre}&=\frac{\num{\Coeffb}}{\num{\Coeffa}}}\xintifboolexpr{\Coeffc==1}{}{&&&\useKV[ClesEquation]{Lettre}&=\frac{\num{\Coeffd}}{\num{\Coeffc}}}
% accolade%\\
%%%%
\ifboolKV[ClesEquation]{Entier}{%
\xdef\TSimp{}%
- \SSimpliTest{\Coeffb}{\Coeffa}\ifthenelse{\boolean{Simplification}}{\xintifboolexpr{#3=0}{\xdef\TSimp{0}}{\xdef\TSimp{1}}}{\xdef\TSimp{0}}
- \SSimpliTest{\Coeffd}{\Coeffc}\ifthenelse{\boolean{Simplification}}{\xintifboolexpr{#5=0}{}{\xdef\TSimp{\fpeval{\TSimp+1}}}}{}
- \xintifboolexpr{\TSimp=0}{}{\\
+ \SSimpliTest{\Coeffb}{\Coeffa}\ifthenelse{\boolean{Simplification}}{\xintifboolexpr{#3==0}{\xdef\TSimp{0}}{\xdef\TSimp{1}}}{\xdef\TSimp{0}}
+ \SSimpliTest{\Coeffd}{\Coeffc}\ifthenelse{\boolean{Simplification}}{\xintifboolexpr{#5==0}{}{\xdef\TSimp{\fpeval{\TSimp+1}}}}{}
+ \xintifboolexpr{\TSimp==0}{}{\\
\ifboolKV[ClesEquation]{Simplification}{%
- &\makebox[0pt]{$\Longleftrightarrow$}&\SSimpliTest{\Coeffb}{\Coeffa}\xintifboolexpr{\Coeffa=1}{&}{\ifthenelse{\boolean{Simplification}}{\useKV[ClesEquation]{Lettre}&=\SSimplifie{\Coeffb}{\Coeffa}}{&}%\\
+ &\makebox[0pt]{$\Longleftrightarrow$}&\SSimpliTest{\Coeffb}{\Coeffa}\xintifboolexpr{\Coeffa==1}{&}{\ifthenelse{\boolean{Simplification}}{\useKV[ClesEquation]{Lettre}&=\SSimplifie{\Coeffb}{\Coeffa}}{&}%\\
}
}{}
&&&\ifboolKV[ClesEquation]{Simplification}{%
\SSimpliTest{\Coeffd}{\Coeffc}%
- \xintifboolexpr{\Coeffc=1}{}{\ifthenelse{\boolean{Simplification}}{\useKV[ClesEquation]{Lettre}&=\SSimplifie{\Coeffd}{\Coeffc}}{}%\\
+ \xintifboolexpr{\Coeffc==1}{}{\ifthenelse{\boolean{Simplification}}{\useKV[ClesEquation]{Lettre}&=\SSimplifie{\Coeffd}{\Coeffc}}{}%\\
}
}{}
}
@@ -8331,25 +8387,25 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\end{align*}
}{%
\begin{align*}
- \xintifboolexpr{#3=0}{\xintifboolexpr{#2=1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}}{\xintifboolexpr{#2=1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}&=0&&\text{ou}&\xintifboolexpr{#5=0}{\xintifboolexpr{#4=1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}}{\xintifboolexpr{#4=1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#5>0}{+\num{#5}}{-\num{\fpeval{0-#5}}}}&=0\\
- \xintifboolexpr{#3=0}{\xdef\Coeffa{1}\xdef\Coeffb{\fpeval{0-#3}}\xintifboolexpr{#2=1}{&}{\useKV[ClesEquation]{Lettre}&=0}}{\xdef\Coeffa{#2}\xdef\Coeffb{\fpeval{0-#3}}\xintifboolexpr{\Coeffa=1}{}{\num{\Coeffa}}\useKV[ClesEquation]{Lettre}&=\num{\Coeffb}}&&&\xintifboolexpr{#5=0}{\xdef\Coeffc{1}\xdef\Coeffd{\fpeval{0-#5}}\xintifboolexpr{#4=1}{&}{\useKV[ClesEquation]{Lettre}&=0}}{\xdef\Coeffc{#4}\xdef\Coeffd{\fpeval{0-#5}}\xintifboolexpr{\Coeffc=1}{}{\num{\Coeffc}}\useKV[ClesEquation]{Lettre}&=\num{\Coeffd}}%\\
- \xintifboolexpr{\Coeffa=1 'and' \Coeffc=1}{}{\\%\ifnum\cmtd>1
- \xintifboolexpr{\Coeffa=1}{&}{\useKV[ClesEquation]{Lettre}&=\frac{\num{\Coeffb}}{\num{\Coeffa}}}\xintifboolexpr{\Coeffc=1}{}{&&&\useKV[ClesEquation]{Lettre}&=\frac{\num{\Coeffd}}{\num{\Coeffc}}}
+ \xintifboolexpr{#3==0}{\xintifboolexpr{#2==1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}}{\xintifboolexpr{#2==1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}&=0&&\text{ou}&\xintifboolexpr{#5==0}{\xintifboolexpr{#4==1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}}{\xintifboolexpr{#4==1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#5>0}{+\num{#5}}{-\num{\fpeval{0-#5}}}}&=0\\
+ \xintifboolexpr{#3==0}{\xdef\Coeffa{1}\xdef\Coeffb{\fpeval{0-#3}}\xintifboolexpr{#2==1}{&}{\useKV[ClesEquation]{Lettre}&=0}}{\xdef\Coeffa{#2}\xdef\Coeffb{\fpeval{0-#3}}\xintifboolexpr{\Coeffa==1}{}{\num{\Coeffa}}\useKV[ClesEquation]{Lettre}&=\num{\Coeffb}}&&&\xintifboolexpr{#5==0}{\xdef\Coeffc{1}\xdef\Coeffd{\fpeval{0-#5}}\xintifboolexpr{#4==1}{&}{\useKV[ClesEquation]{Lettre}&=0}}{\xdef\Coeffc{#4}\xdef\Coeffd{\fpeval{0-#5}}\xintifboolexpr{\Coeffc==1}{}{\num{\Coeffc}}\useKV[ClesEquation]{Lettre}&=\num{\Coeffd}}%\\
+ \xintifboolexpr{\Coeffa==1 'and' \Coeffc==1}{}{\\%\ifnum\cmtd>1
+ \xintifboolexpr{\Coeffa==1}{&}{\useKV[ClesEquation]{Lettre}&=\frac{\num{\Coeffb}}{\num{\Coeffa}}}\xintifboolexpr{\Coeffc==1}{}{&&&\useKV[ClesEquation]{Lettre}&=\frac{\num{\Coeffd}}{\num{\Coeffc}}}
%accolade%\\
%%%%
\ifboolKV[ClesEquation]{Entier}{%
\xdef\TSimp{}
- \SSimpliTest{\Coeffb}{\Coeffa}\ifthenelse{\boolean{Simplification}}{\xintifboolexpr{#3=0}{\xdef\TSimp{0}}{\xdef\TSimp{1}}}{\xdef\TSimp{0}}
- \SSimpliTest{\Coeffd}{\Coeffc}\ifthenelse{\boolean{Simplification}}{\xintifboolexpr{#5=0}{}{\xdef\TSimp{\fpeval{\TSimp+1}}}}{}
- \xintifboolexpr{\TSimp=0}{}{\\
+ \SSimpliTest{\Coeffb}{\Coeffa}\ifthenelse{\boolean{Simplification}}{\xintifboolexpr{#3==0}{\xdef\TSimp{0}}{\xdef\TSimp{1}}}{\xdef\TSimp{0}}
+ \SSimpliTest{\Coeffd}{\Coeffc}\ifthenelse{\boolean{Simplification}}{\xintifboolexpr{#5==0}{}{\xdef\TSimp{\fpeval{\TSimp+1}}}}{}
+ \xintifboolexpr{\TSimp==0}{}{\\
\ifboolKV[ClesEquation]{Simplification}{%
\SSimpliTest{\Coeffb}{\Coeffa}
- \xintifboolexpr{\Coeffa=1}{&}{\ifthenelse{\boolean{Simplification}}{\useKV[ClesEquation]{Lettre}&=\SSimplifie{\Coeffb}{\Coeffa}}{&}%\\
+ \xintifboolexpr{\Coeffa==1}{&}{\ifthenelse{\boolean{Simplification}}{\useKV[ClesEquation]{Lettre}&=\SSimplifie{\Coeffb}{\Coeffa}}{&}%\\
}
}{}
&&&\ifboolKV[ClesEquation]{Simplification}{%
\SSimpliTest{\Coeffd}{\Coeffc}%
- \xintifboolexpr{\Coeffc=1}{}{\ifthenelse{\boolean{Simplification}}{\useKV[ClesEquation]{Lettre}&=\SSimplifie{\Coeffd}{\Coeffc}}{}%\\
+ \xintifboolexpr{\Coeffc==1}{}{\ifthenelse{\boolean{Simplification}}{\useKV[ClesEquation]{Lettre}&=\SSimplifie{\Coeffd}{\Coeffc}}{}%\\
}
}{}
}
@@ -8357,24 +8413,24 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
}
\end{align*}
}%
- \ifboolKV[ClesEquation]{Solution}{L'\'equation $\xintifboolexpr{#3=0}{\xintifboolexpr{#2=1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}}{(\xintifboolexpr{#2=1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}})}\xintifboolexpr{#5=0}{\times\xintifboolexpr{#4=1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}}{(\xintifboolexpr{#4=1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#5>0}{+\num{#5}}{-\num{\fpeval{0-#5}}})}=0$ a deux solutions : \opdiv*{\Coeffb}{\Coeffa}{solution}{resteequa}\opcmp{resteequa}{0}$\ifboolKV[ClesEquation]{LettreSol}{\useKV[ClesEquation]{Lettre}=}{}\displaystyle\ifopeq\opexport{solution}{\solution}\num{\solution}\else\ifboolKV[ClesEquation]{Entier}{\SSimplifie{\Coeffb}{\Coeffa}}{\frac{\num{\Coeffb}}{\num{\Coeffa}}}\fi$ et \opdiv*{\Coeffd}{\Coeffc}{solution}{resteequa}\opcmp{resteequa}{0}$\ifboolKV[ClesEquation]{LettreSol}{\useKV[ClesEquation]{Lettre}=}{}\displaystyle\ifopeq\opexport{solution}{\solution}\num{\solution}\else\ifboolKV[ClesEquation]{Entier}{\SSimplifie{\Coeffd}{\Coeffc}}{\frac{\num{\Coeffd}}{\num{\Coeffc}}}\fi$.
+ \ifboolKV[ClesEquation]{Solution}{L'\'equation $\xintifboolexpr{#3==0}{\xintifboolexpr{#2==1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}}{(\xintifboolexpr{#2==1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}})}\xintifboolexpr{#5==0}{\times\xintifboolexpr{#4==1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}}{(\xintifboolexpr{#4==1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#5>0}{+\num{#5}}{-\num{\fpeval{0-#5}}})}=0$ a deux solutions : \opdiv*{\Coeffb}{\Coeffa}{solution}{resteequa}\opcmp{resteequa}{0}$\ifboolKV[ClesEquation]{LettreSol}{\useKV[ClesEquation]{Lettre}=}{}\displaystyle\ifopeq\opexport{solution}{\solution}\num{\solution}\else\ifboolKV[ClesEquation]{Entier}{\SSimplifie{\Coeffb}{\Coeffa}}{\frac{\num{\Coeffb}}{\num{\Coeffa}}}\fi$ et \opdiv*{\Coeffd}{\Coeffc}{solution}{resteequa}\opcmp{resteequa}{0}$\ifboolKV[ClesEquation]{LettreSol}{\useKV[ClesEquation]{Lettre}=}{}\displaystyle\ifopeq\opexport{solution}{\solution}\num{\solution}\else\ifboolKV[ClesEquation]{Entier}{\SSimplifie{\Coeffd}{\Coeffc}}{\frac{\num{\Coeffd}}{\num{\Coeffc}}}\fi$.
}{}%
}
\newcommand\Verification[5][]{%
- \setKV[ClesEquation]{#1}
- \xdef\ValeurTest{\useKV[ClesEquation]{Nombre}}
- Testons la valeur $\useKV[ClesEquation]{Lettre}=\num{\ValeurTest}$ :
+ \setKV[ClesEquation]{#1}%
+ \xdef\ValeurTest{\useKV[ClesEquation]{Nombre}}%
+ Testons la valeur $\useKV[ClesEquation]{Lettre}=\num{\ValeurTest}$ :%
\begin{align*}
- \xintifboolexpr{#2=0}{\num{#3}}{\num{#2}\times\xintifboolexpr{\ValeurTest<0}{(\num{\ValeurTest})}{\num{\ValeurTest}}\xintifboolexpr{#3=0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{\num{#3}}}}&&\xintifboolexpr{#4=0}{\num{#5}}{\num{#4}\times\xintifboolexpr{\ValeurTest<0}{(\num{\ValeurTest})}{\num{\ValeurTest}}\xintifboolexpr{#5=0}{}{\xintifboolexpr{#5>0}{+\num{#5}}{\num{#5}}}}\\
- \xintifboolexpr{#2=0}{}{\num{\fpeval{#2*\useKV[ClesEquation]{Nombre}}}\xintifboolexpr{#3=0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{\num{#3}}}}&&\xintifboolexpr{#4=0}{}{\num{\fpeval{#4*\useKV[ClesEquation]{Nombre}}}\xintifboolexpr{#5=0}{}{\xintifboolexpr{#5>0}{+\num{#5}}{\num{#5}}}}\\
- \xintifboolexpr{#2=0}{}{\num{\fpeval{#2*\useKV[ClesEquation]{Nombre}+#3}}}&&\xintifboolexpr{#4=0}{}{\num{\fpeval{#4*\useKV[ClesEquation]{Nombre}+#5}}}
+ \xintifboolexpr{#2==0}{\num{#3}}{\num{#2}\times\xintifboolexpr{\ValeurTest<0}{(\num{\ValeurTest})}{\num{\ValeurTest}}\xintifboolexpr{#3==0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{\num{#3}}}}&&\xintifboolexpr{#4==0}{\num{#5}}{\num{#4}\times\xintifboolexpr{\ValeurTest<0}{(\num{\ValeurTest})}{\num{\ValeurTest}}\xintifboolexpr{#5==0}{}{\xintifboolexpr{#5>0}{+\num{#5}}{\num{#5}}}}\\
+ \xintifboolexpr{#2==0}{}{\num{\fpeval{#2*\useKV[ClesEquation]{Nombre}}}\xintifboolexpr{#3==0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{\num{#3}}}}&&\xintifboolexpr{#4==0}{}{\num{\fpeval{#4*\useKV[ClesEquation]{Nombre}}}\xintifboolexpr{#5==0}{}{\xintifboolexpr{#5>0}{+\num{#5}}{\num{#5}}}}\\
+ \xintifboolexpr{#2==0}{}{\num{\fpeval{#2*\useKV[ClesEquation]{Nombre}+#3}}}&&\xintifboolexpr{#4==0}{}{\num{\fpeval{#4*\useKV[ClesEquation]{Nombre}+#5}}}
\end{align*}
- \xdef\Testa{\fpeval{#2*\useKV[ClesEquation]{Nombre}+#3}}\xdef\Testb{\fpeval{#4*\useKV[ClesEquation]{Nombre}+#5}}
+ \xdef\Testa{\fpeval{#2*\useKV[ClesEquation]{Nombre}+#3}}\xdef\Testb{\fpeval{#4*\useKV[ClesEquation]{Nombre}+#5}}%
\ifboolKV[ClesEquation]{Egalite}{%
- Comme \xintifboolexpr{\Testa=\Testb}{$\num{\Testa}=\num{\Testb}$}{$\num{\Testa}\not=\num{\Testb}$}, alors l'\'egalit\'e $\xintifboolexpr{#2=0}{\num{#3}}{\xintifboolexpr{#2=1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#3=0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}}=\xintifboolexpr{#4=0}{\num{#5}}{\xintifboolexpr{#4=1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#5=0}{}{\xintifboolexpr{#5>0}{+\num{#5}}{-\num{\fpeval{0-#5}}}}}$ \xintifboolexpr{\Testa=\Testb}{ est v\'erifi\'ee }{ n'est pas v\'erifi\'ee } pour $\useKV[ClesEquation]{Lettre}=\num{\useKV[ClesEquation]{Nombre}}$.%
- }{\xintifboolexpr{\Testa=\Testb}{Comme $\num{\Testa}=\num{\Testb}$, alors $\useKV[ClesEquation]{Lettre}=\num{\useKV[ClesEquation]{Nombre}}$ est bien }{Comme $\num{\Testa}\not=\num{\Testb}$, alors $\useKV[ClesEquation]{Lettre}=\num{\useKV[ClesEquation]{Nombre}}$ n'est pas }une solution de l'\'equation $\xintifboolexpr{#2=0}{\num{#3}}{\xintifboolexpr{#2=1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#3=0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}}=\xintifboolexpr{#4=0}{\num{#5}}{\xintifboolexpr{#4=1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#5=0}{}{\xintifboolexpr{#5>0}{+\num{#5}}{-\num{\fpeval{0-#5}}}}}$.}
-}
+ Comme \xintifboolexpr{\Testa==\Testb}{$\num{\Testa}=\num{\Testb}$}{$\num{\Testa}\not=\num{\Testb}$}, alors l'\'egalit\'e $\xintifboolexpr{#2==0}{\num{#3}}{\xintifboolexpr{#2==1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#3==0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}}=\xintifboolexpr{#4==0}{\num{#5}}{\xintifboolexpr{#4==1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#5==0}{}{\xintifboolexpr{#5>0}{+\num{#5}}{-\num{\fpeval{0-#5}}}}}$ \xintifboolexpr{\Testa==\Testb}{ est v\'erifi\'ee }{ n'est pas v\'erifi\'ee } pour $\useKV[ClesEquation]{Lettre}=\num{\useKV[ClesEquation]{Nombre}}$.%
+ }{\xintifboolexpr{\Testa==\Testb}{Comme $\num{\Testa}=\num{\Testb}$, alors $\useKV[ClesEquation]{Lettre}=\num{\useKV[ClesEquation]{Nombre}}$ est bien }{Comme $\num{\Testa}\not=\num{\Testb}$, alors $\useKV[ClesEquation]{Lettre}=\num{\useKV[ClesEquation]{Nombre}}$ n'est pas }une solution de l'\'equation $\xintifboolexpr{#2==0}{\num{#3}}{\xintifboolexpr{#2==1}{}{\num{#2}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#3==0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}}=\xintifboolexpr{#4==0}{\num{#5}}{\xintifboolexpr{#4==1}{}{\num{#4}}\useKV[ClesEquation]{Lettre}\xintifboolexpr{#5==0}{}{\xintifboolexpr{#5>0}{+\num{#5}}{-\num{\fpeval{0-#5}}}}}$.}%
+}%
%%%
% Proportionnalit\'e
@@ -8549,7 +8605,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\xdef\NomCouleurTab{\useKV[ClesPourcentage]{CouleurTab}}%
\xdef\NomLargeurTab{\useKV[ClesPourcentage]{Largeur}}%
\begin{center}
- \Propor[GrandeurA=\NomA,GrandeurB=\NomB,CouleurTab=\NomCouleurTab,Largeur=\NomLargeurTab]{/#3,#2/100}
+ \Propor[Math,GrandeurA=\NomA,GrandeurB=\NomB,CouleurTab=\NomCouleurTab,Largeur=\NomLargeurTab]{/\num{#3},\num{#2}/100}
\end{center}
\FlecheCoefInv{\tiny$\times\num{\fpeval{#2/100}}$}%
On obtient une \useKV[ClesPourcentage]{MotReduction} de $\num{\fpeval{#2/100}}\times\num{#3}\ifboolKV[ClesPourcentage]{Concret}{~\text{\useKV[ClesPourcentage]{Unite}}}{}=\num{\fpeval{#3*#2/100}}$\ifboolKV[ClesPourcentage]{Concret}{~\useKV[ClesPourcentage]{Unite}}{}. Donc un total de $\num{#3}\ifboolKV[ClesPourcentage]{Concret}{~\text{\useKV[ClesPourcentage]{Unite}}}{}-\num{\fpeval{#3*#2/100}}\ifboolKV[ClesPourcentage]{Concret}{~\text{\useKV[ClesPourcentage]{Unite}}}{}=\num{\fpeval{#3*(1-#2/100)}}$\ifboolKV[ClesPourcentage]{Concret}{~\useKV[ClesPourcentage]{Unite}}{}.%
@@ -8570,7 +8626,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\xdef\NomCouleurTab{\useKV[ClesPourcentage]{CouleurTab}}%
\xdef\NomLargeurTab{\useKV[ClesPourcentage]{Largeur}}%
\begin{center}%
- \Propor[GrandeurA=\NomA,GrandeurB=\NomB,CouleurTab=\NomCouleurTab,Largeur=\NomLargeurTab]{/#3,#2/100}%
+ \Propor[Math,GrandeurA=\NomA,GrandeurB=\NomB,CouleurTab=\NomCouleurTab,Largeur=\NomLargeurTab]{/\num{#3},\num{#2}/100}%
\end{center}%
\FlecheCoefInv{\tiny$\times\num{\fpeval{#2/100}}$}%
On obtient une augmentation de $\num{\fpeval{#2/100}}\times\num{#3}\ifboolKV[ClesPourcentage]{Concret}{~\text{\useKV[ClesPourcentage]{Unite}}}{}=\num{\fpeval{#3*#2/100}}$\ifboolKV[ClesPourcentage]{Concret}{~\useKV[ClesPourcentage]{Unite}}{}.\\Donc un total de $\num{#3}\ifboolKV[ClesPourcentage]{Concret}{~\text{\useKV[ClesPourcentage]{Unite}}}{}+\num{\fpeval{#3*#2/100}}\ifboolKV[ClesPourcentage]{Concret}{~\text{\useKV[ClesPourcentage]{Unite}}}{}=\num{\fpeval{#3*(1+#2/100)}}$\ifboolKV[ClesPourcentage]{Concret}{~\useKV[ClesPourcentage]{Unite}}{}.%
@@ -8584,7 +8640,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\xdef\NomB{\useKV[ClesPourcentage]{GrandeurB}}%
\xdef\NomCouleurTab{\useKV[ClesPourcentage]{CouleurTab}}%
\xdef\NomLargeurTab{\useKV[ClesPourcentage]{Largeur}}%
- \Propor[GrandeurA=\NomA,GrandeurB=\NomB,CouleurTab=\NomCouleurTab,Largeur=\NomLargeurTab]{#2/#3,/100}%
+ \Propor[Math,GrandeurA=\NomA,GrandeurB=\NomB,CouleurTab=\NomCouleurTab,Largeur=\NomLargeurTab]{\num{#2}/\num{#3},/100}%
\xdef\colorfill{\useKV[ClesPourcentage]{ColorFill}}%
\FlechesPB{2}{1}{\scriptsize$\times\num{\fpeval{#3/100}}$}%
\FlechesPH{1}{2}{\scriptsize$\div\num{\fpeval{#3/100}}$}%
@@ -8887,8 +8943,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\newtoks\toklisteratio
\def\UpdateRatio#1\nil{\addtotok\toklisteratio{#1,}}
-\def\updateratiotoks#1/#2/#3\nil{\addtotok\tabtoksa{&\num{#2}}\addtotok\tabtoksb{&\num{#3}}\addtotok\tabtoksc{&#1}}
-
+\def\updateratiotoks#1/#2/#3\nil{\addtotok\tabtoksa{&\ifx\bla#2\bla\else\num{#2}\fi}\addtotok\tabtoksb{&\ifx\bla#3\bla\else\num{#3}\fi}\addtotok\tabtoksc{&#1}}
\def\buildtabratio{%
\tabtoksa{}\tabtoksb{}\tabtoksc{}%
@@ -9006,7 +9061,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\newcommand\Redaction[4][]{%
\ifboolKV[ClesDroites]{Remediation}{%
- \xintifboolexpr{\useKV[ClesDroites]{Num}=1}{%
+ \xintifboolexpr{\useKV[ClesDroites]{Num}==1}{%
\ifboolKV[ClesDroites]{CitePropriete}{%
Les droites $(\hbox to2em{\dotfill})$ et $(\hbox to2em{\dotfill})$ sont parall\`eles. Les droites $(\hbox to2em{\dotfill})$ et $(\hbox to2em{\dotfill})$ sont parall\`eles.%
@@ -9016,7 +9071,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
}{%
Comme les droites $(\hbox to2em{\dotfill})$ et $(\hbox to2em{\dotfill})$ sont toutes les deux parall\`eles \`a la m\^eme droite $(\hbox to2em{\dotfill})$, alors les droites $(\hbox to2em{\dotfill})$ et $(\hbox to2em{\dotfill})$ sont parall\`eles.%
}
- }{\xintifboolexpr{\useKV[ClesDroites]{Num}=2}{%
+ }{\xintifboolexpr{\useKV[ClesDroites]{Num}==2}{%
\ifboolKV[ClesDroites]{CitePropriete}{%
Les droites $(\hbox to2em{\dotfill})$ et $(\hbox to2em{\dotfill})$ sont perpendiculaires. Les droites $(\hbox to2em{\dotfill})$ et $(\hbox to2em{\dotfill})$ sont perpendiculaires.%
@@ -9039,7 +9094,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
}
}%
}{%
- \xintifboolexpr{\useKV[ClesDroites]{Num}=1}{%
+ \xintifboolexpr{\useKV[ClesDroites]{Num}==1}{%
\ifboolKV[ClesDroites]{CitePropriete}{%
Les droites $(#2)$ et $(#4)$ sont parall\`eles. Les droites $(#3)$ et $(#4)$ sont parall\`eles.%
@@ -9049,7 +9104,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
}{%
Comme les droites $(#2)$ et $(#3)$ sont toutes les deux parall\`eles \`a la m\^eme droite $(#4)$, alors les droites $(#2)$ et $(#3)$ sont parall\`eles.
}
- }{\xintifboolexpr{\useKV[ClesDroites]{Num}=2}{%
+ }{\xintifboolexpr{\useKV[ClesDroites]{Num}==2}{%
\ifboolKV[ClesDroites]{CitePropriete}{%
Les droites $(#2)$ et $(#4)$ sont perpendiculaires. Les droites $(#3)$ et $(#4)$ sont perpendiculaires.%
@@ -9077,7 +9132,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\newcommand\Brouillon[4][]{%
\setlength{\abovedisplayskip}{0pt}
\ifboolKV[ClesDroites]{Remediation}{%
- \xintifboolexpr{\useKV[ClesDroites]{Num}=1}{%
+ \xintifboolexpr{\useKV[ClesDroites]{Num}==1}{%
\[\left.
\begin{array}{l}
(\hbox to2em{\dotfill})//(\hbox to2em{\dotfill})\\
@@ -9086,7 +9141,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\end{array}
\right\}(\hbox to2em{\dotfill})//(\hbox to2em{\dotfill})
\]
- }{\xintifboolexpr{\useKV[ClesDroites]{Num}=2}{%
+ }{\xintifboolexpr{\useKV[ClesDroites]{Num}==2}{%
\[\left.
\begin{array}{l}
(\hbox to2em{\dotfill})\perp(\hbox to2em{\dotfill})\\
@@ -9107,7 +9162,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
}
}
}{
- \xintifboolexpr{\useKV[ClesDroites]{Num}=1}{%
+ \xintifboolexpr{\useKV[ClesDroites]{Num}==1}{%
\[\left.
\begin{array}{l}
(#2)//(#4)\\
@@ -9116,7 +9171,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\end{array}
\right\}(#2)//(#3)
\]
- }{\xintifboolexpr{\useKV[ClesDroites]{Num}=2}{%
+ }{\xintifboolexpr{\useKV[ClesDroites]{Num}==2}{%
\[\left.
\begin{array}{l}
(#2)\perp(#4)\\
@@ -9314,9 +9369,9 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\newcommand\FaireFigure[4][]{%
\setlength{\abovedisplayskip}{0pt}
- \xintifboolexpr{\useKV[ClesDroites]{Num}=1}{%
+ \xintifboolexpr{\useKV[ClesDroites]{Num}==1}{%
\MPFigureDroite{2}{3}%
- }{\xintifboolexpr{\useKV[ClesDroites]{Num}=2}{%
+ }{\xintifboolexpr{\useKV[ClesDroites]{Num}==2}{%
\MPFigureDroite{2}{4}%
}{%
\MPFigureDroite{3}{4}%
@@ -9357,18 +9412,18 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\setKV[ClesAffine]{#1}%
\ifboolKV[ClesAffine]{Image}{%
\ifboolKV[ClesAffine]{Ligne}{%
- \ensuremath{\useKV[ClesAffine]{Nom}(\num{#2})=\num{#3}\times\xintifboolexpr{#2<0}{(\num{#2})}{\num{#2}}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}=\num{\fpeval{#2*#3}}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}\xintifboolexpr{#4=0}{}{=\num{\fpeval{#2*#3+#4}}}}%
+ \ensuremath{\useKV[ClesAffine]{Nom}(\num{#2})=\num{#3}\times\xintifboolexpr{#2<0}{(\num{#2})}{\num{#2}}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}=\num{\fpeval{#2*#3}}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}\xintifboolexpr{#4==0}{}{=\num{\fpeval{#2*#3+#4}}}}%
}{%
\ifboolKV[ClesAffine]{ProgCalcul}{%
\begin{align*}
- \useKV[ClesAffine]{Nom}&:\useKV[ClesAffine]{Variable}\stackrel{\times\xintifboolexpr{#3<0}{(\num{#3})}{\num{#3}}}{\longrightarrow}\num{#3}\useKV[ClesAffine]{Variable}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{\stackrel{+\num{#4}}{\longrightarrow}}{\stackrel{\num{#4}}{\longrightarrow}}\num{#3}\useKV[ClesAffine]{Variable}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{\num{#4}}}}\\
- \useKV[ClesAffine]{Nom}&:\num{#2}\stackrel{\times\xintifboolexpr{#3<0}{(\num{#3})}{\num{#3}}}{\longrightarrow}\num{\fpeval{#3*#2}}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{\stackrel{+\num{#4}}{\longrightarrow}}{\stackrel{\num{#4}}{\longrightarrow}}\num{\fpeval{#3*#2+#4}}}
+ \useKV[ClesAffine]{Nom}&:\useKV[ClesAffine]{Variable}\stackrel{\times\xintifboolexpr{#3<0}{(\num{#3})}{\num{#3}}}{\longrightarrow}\num{#3}\useKV[ClesAffine]{Variable}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{\stackrel{+\num{#4}}{\longrightarrow}}{\stackrel{\num{#4}}{\longrightarrow}}\num{#3}\useKV[ClesAffine]{Variable}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{\num{#4}}}}\\
+ \useKV[ClesAffine]{Nom}&:\num{#2}\stackrel{\times\xintifboolexpr{#3<0}{(\num{#3})}{\num{#3}}}{\longrightarrow}\num{\fpeval{#3*#2}}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{\stackrel{+\num{#4}}{\longrightarrow}}{\stackrel{\num{#4}}{\longrightarrow}}\num{\fpeval{#3*#2+#4}}}
\end{align*}
}{%
\begin{align*}
- \useKV[ClesAffine]{Nom}(\num{#2})&=\num{#3}\times\xintifboolexpr{#2<0}{(\num{#2})}{\num{#2}}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}\\
- \useKV[ClesAffine]{Nom}(\num{#2})&=\num{\fpeval{#3*#2}}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}%\\
- \xintifboolexpr{#4=0}{}{\\
+ \useKV[ClesAffine]{Nom}(\num{#2})&=\num{#3}\times\xintifboolexpr{#2<0}{(\num{#2})}{\num{#2}}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}\\
+ \useKV[ClesAffine]{Nom}(\num{#2})&=\num{\fpeval{#3*#2}}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}%\\
+ \xintifboolexpr{#4==0}{}{\\
\useKV[ClesAffine]{Nom}(\num{#2})&=\num{\fpeval{#3*#2+#4}}%\\
}
\end{align*}
@@ -9378,11 +9433,11 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\ifboolKV[ClesAffine]{ProgCalcul}{%
La fonction affine $\useKV[ClesAffine]{Nom}$ est d\'efinie par :
\begin{align*}
- \useKV[ClesAffine]{Nom}&:\useKV[ClesAffine]{Variable}\stackrel{\times\xintifboolexpr{#3<0}{(\num{#3})}{\num{#3}}}{\longrightarrow}\num{#3}\useKV[ClesAffine]{Variable}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{\stackrel{+\num{#4}}{\longrightarrow}}{\stackrel{\num{#4}}{\longrightarrow}}\num{#3}\useKV[ClesAffine]{Variable}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{\num{#4}}}}
+ \useKV[ClesAffine]{Nom}&:\useKV[ClesAffine]{Variable}\stackrel{\times\xintifboolexpr{#3<0}{(\num{#3})}{\num{#3}}}{\longrightarrow}\num{#3}\useKV[ClesAffine]{Variable}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{\stackrel{+\num{#4}}{\longrightarrow}}{\stackrel{\num{#4}}{\longrightarrow}}\num{#3}\useKV[ClesAffine]{Variable}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{\num{#4}}}}
\end{align*}
Nous cherchons le nombre $\useKV[ClesAffine]{Variable}$ tel que son image par la fonction $\useKV[ClesAffine]{Nom}$ soit $\num{#2}$. Donc on obtient :
\begin{align*}
- \useKV[ClesAffine]{Nom}&:\frac{\num{\fpeval{#2-#4}}}{\num{#3}}\stackrel{\div\xintifboolexpr{#3<0}{(\num{#3})}{\num{#3}}}{\longleftarrow}\num{\fpeval{#2-#4}}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{\stackrel{-\num{#4}}{\longleftarrow}}{\stackrel{+\num{\fpeval{0-#4}}}{\longleftarrow}}\num{#2}}
+ \useKV[ClesAffine]{Nom}&:\frac{\num{\fpeval{#2-#4}}}{\num{#3}}\stackrel{\div\xintifboolexpr{#3<0}{(\num{#3})}{\num{#3}}}{\longleftarrow}\num{\fpeval{#2-#4}}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{\stackrel{-\num{#4}}{\longleftarrow}}{\stackrel{+\num{\fpeval{0-#4}}}{\longleftarrow}}\num{#2}}
\end{align*}
}{%
On cherche l'ant\'ec\'edent de $\num{#2}$ par la fonction
@@ -9390,12 +9445,12 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
$\useKV[ClesAffine]{Variable}$ tel que
$\useKV[ClesAffine]{Nom}(\useKV[ClesAffine]{Variable})=\num{#2}$. Or,
la fonction $\useKV[ClesAffine]{Nom}$ est d\'efinie par : \[%
- \useKV[ClesAffine]{Nom}(\useKV[ClesAffine]{Variable})=\xintifboolexpr{#3=0}{}{\num{#3}\useKV[ClesAffine]{Variable}}\xintifboolexpr{#3=0}{\num{#4}}{\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}}
+ \useKV[ClesAffine]{Nom}(\useKV[ClesAffine]{Variable})=\xintifboolexpr{#3==0}{}{\num{#3}\useKV[ClesAffine]{Variable}}\xintifboolexpr{#3==0}{\num{#4}}{\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}}
\]
Par cons\'equent, on a :
\begin{align*}
- \num{#3}\useKV[ClesAffine]{Variable}\xintifboolexpr{#4=0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}&=\num{#2}\\
- \xintifboolexpr{#4=0}{\useKV[ClesAffine]{Variable}\uppercase{&}=\frac{\num{#2}}{\num{#3}}%\\
+ \num{#3}\useKV[ClesAffine]{Variable}\xintifboolexpr{#4==0}{}{\xintifboolexpr{#4>0}{+\num{#4}}{-\num{\fpeval{0-#4}}}}&=\num{#2}\\
+ \xintifboolexpr{#4==0}{\useKV[ClesAffine]{Variable}\uppercase{&}=\frac{\num{#2}}{\num{#3}}%\\
}{\num{#3}\useKV[ClesAffine]{Variable}&=\num{\fpeval{#2-#4}}\\
\useKV[ClesAffine]{Variable}&=\frac{\num{\fpeval{#2-#4}}}{\num{#3}}%\\
}
@@ -9420,7 +9475,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\end{align*}
\xdef\OrdOrigine{\fpeval{#3-(#3-#5)*#2/(#2-#4)}}
La fonction affine $\useKV[ClesAffine]{Nom}$ cherch\'ee est :
- \[\useKV[ClesAffine]{Nom}:\useKV[ClesAffine]{Variable}\mapsto\SSimplifie{\fpeval{#3-#5}}{\fpeval{#2-#4}}\useKV[ClesAffine]{Variable}\xintifboolexpr{\OrdOrigine=0}{}{\xintifboolexpr{\OrdOrigine>0}{+\num{\OrdOrigine}}{-\num{\fpeval{0-\OrdOrigine}}}}\]
+ \[\useKV[ClesAffine]{Nom}:\useKV[ClesAffine]{Variable}\mapsto\SSimplifie{\fpeval{#3-#5}}{\fpeval{#2-#4}}\useKV[ClesAffine]{Variable}\xintifboolexpr{\OrdOrigine==0}{}{\xintifboolexpr{\OrdOrigine>0}{+\num{\OrdOrigine}}{-\num{\fpeval{0-\OrdOrigine}}}}\]
}{%
%
}%
@@ -9433,17 +9488,17 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\MPFonctionAffine{\useKV[ClesAffine]{Unitex}}{\useKV[ClesAffine]{Unitey}}{#2}{#3}{#4}{#5}{""}}{}%
}{}%
\ifboolKV[ClesAffine]{Redaction}{%
- \xintifboolexpr{#2=0}{Comme la fonction $\useKV[ClesAffine]{Nom}$
+ \xintifboolexpr{#2==0}{Comme la fonction $\useKV[ClesAffine]{Nom}$
est une fonction constante, alors sa repr\'esentation graphique est une droite parall\`ele \`a l'axe des abscisses passant par le point de coordonn\'ees $(0;\num{#3})$.}%
- {\xintifboolexpr{#3=0}{Comme la fonction $\useKV[ClesAffine]{Nom}$ est une fonction lin\'eaire, alors sa repr\'esentation graphique est une droite passant par l'origine du rep\`ere.\\Je choisis $\useKV[ClesAffine]{Variable}=\num{#4}$. Son image est \xdef\NomFonctionA{\useKV[ClesAffine]{Nom}}\FonctionAffine[Nom=\NomFonctionA,Image,Ligne]{#4}{#2}{#3}{#5}. On place le point de coordonn\'ees $(\num{#4};\num{\fpeval{#2*#4+#3}})$.
+ {\xintifboolexpr{#3==0}{Comme la fonction $\useKV[ClesAffine]{Nom}$ est une fonction lin\'eaire, alors sa repr\'esentation graphique est une droite passant par l'origine du rep\`ere.\\Je choisis $\useKV[ClesAffine]{Variable}=\num{#4}$. Son image est \xdef\NomFonctionA{\useKV[ClesAffine]{Nom}}\FonctionAffine[Nom=\NomFonctionA,Image,Ligne]{#4}{#2}{#3}{#5}. On place le point de coordonn\'ees $(\num{#4};\num{\fpeval{#2*#4+#3}})$.
}{%
Comme $\useKV[ClesAffine]{Nom}$ est une fonction affine, alors sa repr\'esentation graphique est une droite.\\Je choisis $\useKV[ClesAffine]{Variable}=\num{#4}$. Son image est \xdef\NomVariable{\useKV[ClesAffine]{Variable}}\xdef\NomFonction{\useKV[ClesAffine]{Nom}}\FonctionAffine[Nom=\NomFonction,Image,Ligne]{#4}{#2}{#3}{#5}. On place le point de coordonn\'ees $(\num{#4};\num{\fpeval{#2*#4+#3}})$.\\Je choisis \setKV[ClesAffine]{Variable=\NomVariable}$\useKV[ClesAffine]{Variable}=\num{#5}$. Son image est \FonctionAffine[Nom=\NomFonction,Image,Ligne]{#5}{#2}{#3}{#4}. On place le point de coordonn\'ees $(\num{#5};\num{\fpeval{#2*#5+#3}})$.%
}%
}%
}%
{}%
- \ifboolKV[ClesAffine]{Ecriture}{\ensuremath{\useKV[ClesAffine]{Nom}(\useKV[ClesAffine]{Variable})=\xintifboolexpr{#2=0}{}{\num{#2}\useKV[ClesAffine]{Variable}}\xintifboolexpr{#2=0}{\num{#3}}{\xintifboolexpr{#3=0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}}}}{}%
- \ifboolKV[ClesAffine]{Definition}{\ensuremath{\useKV[ClesAffine]{Nom}:\useKV[ClesAffine]{Variable}\mapsto\xintifboolexpr{#2=0}{}{\num{#2}\useKV[ClesAffine]{Variable}}\xintifboolexpr{#2=0}{\num{#3}}{\xintifboolexpr{#3=0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}}}}{}%
+ \ifboolKV[ClesAffine]{Ecriture}{\ensuremath{\useKV[ClesAffine]{Nom}(\useKV[ClesAffine]{Variable})=\xintifboolexpr{#2==0}{}{\num{#2}\useKV[ClesAffine]{Variable}}\xintifboolexpr{#2==0}{\num{#3}}{\xintifboolexpr{#3==0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}}}}{}%
+ \ifboolKV[ClesAffine]{Definition}{\ensuremath{\useKV[ClesAffine]{Nom}:\useKV[ClesAffine]{Variable}\mapsto\xintifboolexpr{#2==0}{}{\num{#2}\useKV[ClesAffine]{Variable}}\xintifboolexpr{#2==0}{\num{#3}}{\xintifboolexpr{#3==0}{}{\xintifboolexpr{#3>0}{+\num{#3}}{-\num{\fpeval{0-#3}}}}}}}{}%
}%
\def\MPFonctionAffine#1#2#3#4#5#6#7{%
@@ -9708,7 +9763,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
%%%
% Fonction
%%%
-\setKVdefault[ClesFonction]{Nom=f,Variable=x,Calcul=x,Tableau=false,Largeur=5mm,Ecriture=false,Definition=false,Points=false,Tangentes=false,PasX=1,PasY=1,UniteX=1,UniteY=1,Prolonge=false}
+\setKVdefault[ClesFonction]{Nom=f,Variable=x,Calcul=x,Tableau=false,Largeur=5mm,Ecriture=false,Definition=false,Points=false,Tangentes=false,PasX=1,PasY=1,UniteX=1,UniteY=1,Prolonge=false,Trace=false}
\newtoks\toklistePtsFn%pour la discipline
@@ -10037,48 +10092,54 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\fi
}
-\newcommand{\Fonction}[2][]{%
+\newcommand\Fonction[2][]{%
\useKVdefault[ClesFonction]
\setKV[ClesFonction]{#1}
- \ifboolKV[ClesFonction]{Points}{%
- \toklistePtsFn{}%
- % \setsepchar[*]{,*/}%\ignoreemptyitems%
- \setsepchar[*]{§*/}%\ignoreemptyitems%
- \readlist*\ListePoints{#2}%
- \ifboolKV[ClesFonction]{Tangentes}{%
- \foreachitem\compteur\in\ListePoints{%
- \expandafter\UpdatePtsFn\compteur\nil%
- }%
- \ifboolKV[ClesFonction]{Prolonge}{%
- \MPCourbe{\the\toklistePtsFn}{\useKV[ClesFonction]{PasX}}{\useKV[ClesFonction]{PasY}}{\useKV[ClesFonction]{UniteX}}{\useKV[ClesFonction]{UniteY}}{1}%
+ \ifboolKV[ClesFonction]{Trace}{%
+ \useKVdefault[TraceG]%
+ \setKV[TraceG]{#1}%
+ \MPTraceFonction[#1]{\useKV[ClesFonction]{Calcul}}%
+ }{%
+ \ifboolKV[ClesFonction]{Points}{%
+ \toklistePtsFn{}%
+ % \setsepchar[*]{,*/}%\ignoreemptyitems%
+ \setsepchar[*]{§*/}%\ignoreemptyitems%
+ \readlist*\ListePoints{#2}%
+ \ifboolKV[ClesFonction]{Tangentes}{%
+ \foreachitem\compteur\in\ListePoints{%
+ \expandafter\UpdatePtsFn\compteur\nil%
+ }%
+ \ifboolKV[ClesFonction]{Prolonge}{%
+ \MPCourbe{\the\toklistePtsFn}{\useKV[ClesFonction]{PasX}}{\useKV[ClesFonction]{PasY}}{\useKV[ClesFonction]{UniteX}}{\useKV[ClesFonction]{UniteY}}{1}%
+ }{%
+ \MPCourbe{\the\toklistePtsFn}{\useKV[ClesFonction]{PasX}}{\useKV[ClesFonction]{PasY}}{\useKV[ClesFonction]{UniteX}}{\useKV[ClesFonction]{UniteY}}{0}%
+ }%
}{%
- \MPCourbe{\the\toklistePtsFn}{\useKV[ClesFonction]{PasX}}{\useKV[ClesFonction]{PasY}}{\useKV[ClesFonction]{UniteX}}{\useKV[ClesFonction]{UniteY}}{0}%
+ \foreachitem\compteur\in\ListePoints{%
+ \expandafter\UpdatePtsFN\compteur\nil%
+ }%
+ \ifboolKV[ClesFonction]{Prolonge}{%
+ \MPCourbePoints{\the\toklistePtsFn}{\useKV[ClesFonction]{PasX}}{\useKV[ClesFonction]{PasY}}{\useKV[ClesFonction]{UniteX}}{\useKV[ClesFonction]{UniteY}}{1}%
+ }{%
+ \MPCourbePoints{\the\toklistePtsFn}{\useKV[ClesFonction]{PasX}}{\useKV[ClesFonction]{PasY}}{\useKV[ClesFonction]{UniteX}}{\useKV[ClesFonction]{UniteY}}{0}%
+ }%
}%
}{%
- \foreachitem\compteur\in\ListePoints{%
- \expandafter\UpdatePtsFN\compteur\nil%
- }%
- \ifboolKV[ClesFonction]{Prolonge}{%
- \MPCourbePoints{\the\toklistePtsFn}{\useKV[ClesFonction]{PasX}}{\useKV[ClesFonction]{PasY}}{\useKV[ClesFonction]{UniteX}}{\useKV[ClesFonction]{UniteY}}{1}%
- }{%
- \MPCourbePoints{\the\toklistePtsFn}{\useKV[ClesFonction]{PasX}}{\useKV[ClesFonction]{PasY}}{\useKV[ClesFonction]{UniteX}}{\useKV[ClesFonction]{UniteY}}{0}%
- }%
+ \ignoreemptyitems%
+ \readlist*\ListeFonction{#2}
+ \StrSubstitute{\useKV[ClesFonction]{Calcul}}{\useKV[ClesFonction]{Variable}}{\i}[\temp]%
+ \StrSubstitute{\useKV[ClesFonction]{Calcul}}{**}{^}[\tempa]%
+ \StrSubstitute{\tempa}{*}{}[\tempab]%
+ \ifboolKV[ClesFonction]{Ecriture}{%
+ \ensuremath{\useKV[ClesFonction]{Nom}(\useKV[ClesFonction]{Variable})=\tempab}
+ }{}%
+ \ifboolKV[ClesFonction]{Definition}{%
+ \ensuremath{\useKV[ClesFonction]{Nom}:\useKV[ClesFonction]{Variable}\mapsto\tempab}
+ }{}%
+ \ifboolKV[ClesFonction]{Tableau}{%
+ \buildtabfonction%
+ }{}%
}%
- }{%
- \ignoreemptyitems%
- \readlist*\ListeFonction{#2}
- \StrSubstitute{\useKV[ClesFonction]{Calcul}}{\useKV[ClesFonction]{Variable}}{\i}[\temp]%
- \StrSubstitute{\useKV[ClesFonction]{Calcul}}{**}{^}[\tempa]%
- \StrSubstitute{\tempa}{*}{}[\tempab]%
- \ifboolKV[ClesFonction]{Ecriture}{%
- \ensuremath{\useKV[ClesFonction]{Nom}(\useKV[ClesFonction]{Variable})=\tempab}
- }{}%
- \ifboolKV[ClesFonction]{Definition}{%
- \ensuremath{\useKV[ClesFonction]{Nom}:\useKV[ClesFonction]{Variable}\mapsto\tempab}
- }{}%
- \ifboolKV[ClesFonction]{Tableau}{%
- \buildtabfonction%
- }{}%
}%
}%
@@ -10095,6 +10156,415 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
}
%%%
+% Diff\'erentes représentations graphiques
+%%%
+\setKVdefault[TraceG]{Grille=false,Graduations=false,PasGrilleX=1,PasGrilleY=1,Xmin=-5.5,Xmax=5.5,Xstep=1,Ymin=-5.5,Ymax=5.5,Ystep=1,Bornea=-5.5,Borneb=5.5,LabelX={},LabelY={},LabelC=0.5,NomCourbe={},Origine={(5.5,5.5)},Fonction=false,Points=false,Invisible=false,CouleurPoint=red,CouleurTrace=black,Relie=false,RelieSegment=false}
+
+\newcommand\TraceGraphique[2][]{%
+ \useKVdefault[TraceG]%
+ \setKV[TraceG]{#1}%
+ \ifboolKV[TraceG]{Fonction}{%
+ \MPTraceFonction[#1]{#2}%
+ }{%
+ \setKV[TraceG]{Xmin=0,Ymin=0}
+ \setKV[TraceG]{#1}%
+ \readlist*\ListePointsPlaces{#2}%
+ \newtoks\toklistepoint%
+ \foreachitem\compteur\in\ListePointsPlaces{\expandafter\Updatetoks\compteur\nil}%
+ \MPPlacePoint[#1]{\the\toklistepoint}
+ }%
+}%
+
+\newcommand\MPPlacePoint[2][]{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ xmin=\useKV[TraceG]{Xmin};
+ xmax=\useKV[TraceG]{Xmax};
+ ymin=\useKV[TraceG]{Ymin};
+ ymax=\useKV[TraceG]{Ymax};
+ pasx=\useKV[TraceG]{Xstep};
+ pasy=\useKV[TraceG]{Ystep};
+ x.u=1cm/\useKV[TraceG]{Xstep};
+ y.u=1cm/\useKV[TraceG]{Ystep};
+ grillex=\useKV[TraceG]{PasGrilleX};
+ grilley=\useKV[TraceG]{PasGrilleY};
+ pos=\useKV[TraceG]{LabelC};
+
+ color colorpoint,colortrace;
+ colorpoint=\useKV[TraceG]{CouleurPoint};
+ colortrace=\useKV[TraceG]{CouleurTrace};
+ boolean Grille;
+ Grille=\useKV[TraceG]{Grille};
+
+ boolean Graduations;
+ Graduations=\useKV[TraceG]{Graduations};
+
+ boolean Relie;
+ Relie=\useKV[TraceG]{Relie};
+
+ boolean RelieSegment;
+ RelieSegment=\useKV[TraceG]{RelieSegment};
+
+ boolean Invisible;
+ Invisible=\useKV[TraceG]{Invisible};
+
+ pair Origine;
+ Origine=(0,0);
+
+ if Grille:
+ drawoptions(withcolor 0.75white);
+ for k=0 step grillex until (xmax-xmin):
+ trace (k*x.u,ypart(Origine))--(x.u*k,y.u*(ymax-ymin));
+ endfor;
+ for k=0 step grilley until (ymax-ymin):
+ trace (xpart(Origine),k*y.u)--(x.u*(xmax-xmin),y.u*k);
+ endfor;
+ drawoptions();
+ fi;
+
+ if Graduations:
+ for k=0 step grillex until (xmax-xmin):
+ trace ((0,-0.5mm)--(0,0.5mm)) shifted ((k*x.u,0) shifted Origine) withpen pencircle scaled1.25;
+ label.bot(TEX("\num{"&decimal(xmin+k)&"}"),(k*x.u,0) shifted Origine);
+ endfor;
+ label.ulft(TEX("\num{"&decimal(ymin)&"}"),(0,0) shifted Origine);
+ for k=grilley step grilley until (ymax-ymin):
+ trace ((-0.5mm,0)--(0.5mm,0)) shifted ((0,k*y.u) shifted Origine) withpen pencircle scaled1.25;
+ label.lft(TEX("\num{"&decimal(ymin+k)&"}"),(0,k*y.u) shifted Origine);
+ endfor;
+ fi;
+ drawoptions(withpen pencircle scaled1.5);
+ drawarrow Origine--(xpart(Origine),y.u*(ymax-ymin));
+ drawarrow Origine--((xmax-xmin)*x.u,ypart(Origine));
+ drawoptions();
+
+ % On relie éventuellement les points
+ if Relie:
+ pair N[];
+ nbpoint=0;
+ for p_=#2:
+ nbpoint:=nbpoint+1;
+ N[nbpoint]=(x.u*(xpart(p_)-xmin),y.u*(ypart(p_)-ymin));
+ endfor;
+ draw N[1] for k=2 upto nbpoint:
+ ..N[k]
+ endfor withcolor colortrace;
+ fi;
+ if RelieSegment:
+ pair N[];
+ nbpoint=0;
+ for p_=#2:
+ nbpoint:=nbpoint+1;
+ N[nbpoint]=(x.u*(xpart(p_)-xmin),y.u*(ypart(p_)-ymin));
+ endfor;
+ draw N[1] for k=2 upto nbpoint:
+ --N[k]
+ endfor withcolor colortrace;
+ fi;
+
+ % On place les points
+ if Invisible=false:
+ drawoptions(withcolor colorpoint);
+ for p_=#2:
+ dotlabel("",(x.u*(xpart(p_)-xmin),y.u*(ypart(p_)-ymin)));
+ endfor;
+ drawoptions();
+ fi;
+ %on labelise les axes
+ label.urt(btex \useKV[TraceG]{LabelX} etex,(x.u*(xmax-xmin),ypart(Origine)));
+ label.urt(btex \useKV[TraceG]{LabelY} etex,(xpart(Origine),y.u*(ymax-ymin)));
+ \end{mplibcode}
+ \else
+ \mpxcommands{%
+ \setKV[TraceG]{#1}
+ }
+ \begin{mpost}[mpsettings={xmin=\useKV[TraceG]{Xmin};xmax=\useKV[TraceG]{Xmax};ymin=\useKV[TraceG]{Ymin};ymax=\useKV[TraceG]{Ymax};pasx=\useKV[TraceG]{Xstep};pasy=\useKV[TraceG]{Ystep};xu=1cm/\useKV[TraceG]{Xstep};yu=1cm/\useKV[TraceG]{Ystep};grillex=\useKV[TraceG]{PasGrilleX};grilley=\useKV[TraceG]{PasGrilleY};pos=\useKV[TraceG]{LabelC};color colorpoint,colortrace;colorpoint=\useKV[TraceG]{CouleurPoint};colortrace=\useKV[TraceG]{CouleurTrace};boolean Grille;Grille=\useKV[TraceG]{Grille};boolean Graduations;Graduations=\useKV[TraceG]{Graduations};boolean Relie;Relie=\useKV[TraceG]{Relie};boolean RelieSegment;RelieSegment=\useKV[TraceG]{RelieSegment};boolean Invisible;Invisible=\useKV[TraceG]{Invisible};}]
+ pair Origine;
+ Origine=(0,0);
+
+ if Grille:
+ drawoptions(withcolor 0.75white);
+ for k=0 step grillex until (xmax-xmin):
+ trace (k*xu,ypart(Origine))--(xu*k,yu*(ymax-ymin));
+ endfor;
+ for k=0 step grilley until (ymax-ymin):
+ trace (xpart(Origine),k*yu)--(xu*(xmax-xmin),yu*k);
+ endfor;
+ drawoptions();
+ fi;
+
+ if Graduations:
+ for k=0 step grillex until (xmax-xmin):
+ trace ((0,-0.5mm)--(0,0.5mm)) shifted ((k*xu,0) shifted Origine) withpen pencircle scaled1.25;
+ label.bot(LATEX("\num{"&decimal(xmin+k)&"}"),(k*xu,0) shifted Origine);
+ endfor;
+ label.ulft(LATEX("\num{"&decimal(ymin)&"}"),(0,0) shifted Origine);
+ for k=grilley step grilley until (ymax-ymin):
+ trace ((-0.5mm,0)--(0.5mm,0)) shifted ((0,k*yu) shifted Origine) withpen pencircle scaled1.25;
+ label.lft(LATEX("\num{"&decimal(ymin+k)&"}"),(0,k*yu) shifted Origine);
+ endfor;
+ fi;
+ drawoptions(withpen pencircle scaled1.5);
+ drawarrow Origine--(xpart(Origine),yu*(ymax-ymin));
+ drawarrow Origine--((xmax-xmin)*xu,ypart(Origine));
+ drawoptions();
+
+ % On relie éventuellement les points
+ if Relie:
+ pair N[];
+ nbpoint=0;
+ for p_=#2:
+ nbpoint:=nbpoint+1;
+ N[nbpoint]=(xu*(xpart(p_)-xmin),yu*(ypart(p_)-ymin));
+ endfor;
+ draw N[1] for k=2 upto nbpoint:
+ ..N[k]
+ endfor withcolor colortrace;
+ fi;
+ if RelieSegment:
+ pair N[];
+ nbpoint=0;
+ for p_=#2:
+ nbpoint:=nbpoint+1;
+ N[nbpoint]=(xu*(xpart(p_)-xmin),yu*(ypart(p_)-ymin));
+ endfor;
+ draw N[1] for k=2 upto nbpoint:
+ --N[k]
+ endfor withcolor colortrace;
+ fi;
+
+ % On place les points
+ if Invisible=false:
+ drawoptions(withcolor colorpoint);
+ for p_=#2:
+ dotlabel("",(xu*(xpart(p_)-xmin),yu*(ypart(p_)-ymin)));
+ endfor;
+ drawoptions();
+ fi;
+ %on labelise les axes
+ label.urt(btex \unexpanded{\useKV[TraceG]{LabelX}} etex,(xu*(xmax-xmin),ypart(Origine)));
+ label.urt(btex \unexpanded{\useKV[TraceG]{LabelY}} etex,(xpart(Origine),yu*(ymax-ymin)));
+ \end{mpost}
+ \fi
+}
+
+\newcommand\MPTraceFonction[2][]{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ borneinf=\useKV[TraceG]{Bornea};
+ bornesup=\useKV[TraceG]{Borneb};
+ xmin=\useKV[TraceG]{Xmin};
+ xmax=\useKV[TraceG]{Xmax};
+ ymin=\useKV[TraceG]{Ymin};
+ ymax=\useKV[TraceG]{Ymax};
+ pasx=\useKV[TraceG]{Xstep};
+ pasy=\useKV[TraceG]{Ystep};
+ x.u=1cm/\useKV[TraceG]{Xstep};
+ y.u=1cm/\useKV[TraceG]{Ystep};
+ grillex=\useKV[TraceG]{PasGrilleX};
+ grilley=\useKV[TraceG]{PasGrilleY};
+ pos=\useKV[TraceG]{LabelC};
+
+ color colortrace;
+ colortrace=\useKV[TraceG]{CouleurTrace};
+
+ pair Origine;
+ Origine=(xmin,ymin)+\useKV[TraceG]{Origine};
+
+ boolean Grille;
+ Grille=\useKV[TraceG]{Grille};
+
+ boolean Graduations;
+ Graduations=\useKV[TraceG]{Graduations};
+
+ vardef sin(expr t) = sind(c*t) enddef;
+
+ vardef cos(expr t) = cosd(c*t) enddef;
+
+ vardef tan(expr t) = sin(t)/cos(t) enddef;
+
+ vardef exp(expr t) = e**t enddef;
+
+ vardef ch(expr x)=(exp(x)+exp(-x))/2 enddef;
+
+ vardef sh(expr x)=(exp(x)-exp(-x))/2 enddef;
+
+ vardef ln(expr t) = mlog(t)/256 enddef;
+
+ vardef arcsin(expr x)=%Définition mathématique en radian
+ pi*angle((sqrt(1-x**2),x))/180
+ enddef;
+
+ vardef arccos(expr x)=%Définition mathématique en radian
+ pi*angle((x,sqrt(1-x**2)))/180
+ enddef;
+
+ path Cb[];
+
+ vardef courbe[](expr a,b,nb)(text texte)=
+ path Courbe;
+ for i:=0 upto nb :
+ x@[i]:=(a+i*(b-a)/nb);
+ x:=x@[i];
+ y@[i]:=texte;
+ endfor ;
+ Cb@:=(x@.0*x.u,y@.0*y.u)
+ for i:=1 upto nb :
+ ..(x@[i]*x.u,y@[i]*y.u)
+ endfor;
+ Cb@:=Cb@ shifted (Origine*cm);
+ Courbe=Cb@;
+ Courbe
+ enddef;
+
+ if Grille:
+ drawoptions(withcolor 0.75white);
+ for k=xpart(Origine) step grillex until xmax:
+ trace u*(k,ymin)--u*(k,ymax);
+ endfor;
+ for k=xpart(Origine) step -grillex until xmin:
+ trace u*(k,ymin)--u*(k,ymax);
+ endfor;
+ for k=ypart(Origine) step grilley until ymax:
+ trace u*(xmin,k)--u*(xmax,k);
+ endfor;
+ for k=ypart(Origine) step -grilley until ymin:
+ trace u*(xmin,k)--u*(xmax,k);
+ endfor;
+ drawoptions();
+ fi;
+ if Graduations:
+ for k=1 upto xmax/grillex:
+ dotlabel.bot(TEX("\num{"&decimal(k)&"}"),(k*x.u+xpart(Origine*cm),ypart(Origine*cm)));
+ endfor;
+ for k=-1 downto xmin/grillex:
+ dotlabel.bot(TEX("\num{"&decimal(k)&"}"),(k*x.u+xpart(Origine*cm),ypart(Origine*cm)));
+ endfor;
+ for k=1 upto ymax/grilley:
+ dotlabel.lft(TEX("\num{"&decimal(k)&"}"),(xpart(Origine*cm),k*y.u+ypart(Origine*cm)));
+ endfor;
+ for k=-1 downto ymin/grilley:
+ dotlabel.lft(TEX("\num{"&decimal(k)&"}"),(xpart(Origine*cm),k*y.u+ypart(Origine*cm)));
+ endfor;
+ fi;
+ drawoptions(withpen pencircle scaled1.5);
+ drawarrow (u*(0,ymin)--u*(0,ymax)) shifted (u*(xpart(Origine),0));
+ drawarrow (u*(xmin,0)--u*(xmax,0)) shifted (u*(0,ypart(Origine)));
+ drawoptions();
+ draw courbe1(borneinf,bornesup,100)(#2) withcolor colortrace;
+ % labelisation
+ numeric t;
+ t=pos*length Cb1;
+ pair PT,Tangente;
+ PT:=point (pos*length Cb1) of Cb1;
+ Tangente:=unitvector(direction t of Cb1);
+ label(btex \useKV[TraceG]{NomCourbe} etex rotated angle(Tangente),PT+2mm*(Tangente rotated 90));
+ % fin labelisation
+ clip currentpicture to polygone(u*(xmin,ymin),u*(xmax,ymin),u*(xmax,ymax),u*(xmin,ymax));
+ label.rt(btex \useKV[TraceG]{LabelX} etex,u*(xmax,ypart(Origine)));
+ label.top(btex \useKV[TraceG]{LabelY} etex,u*(xpart(Origine),ymax));
+ \end{mplibcode}
+ \else
+ \mpxcommands{%
+ \setKV[TraceG]{#1}
+ }
+ \begin{mpost}[mpsettings={borneinf=\useKV[TraceG]{Bornea};bornesup=\useKV[TraceG]{Borneb};xmin=\useKV[TraceG]{Xmin};xmax=\useKV[TraceG]{Xmax};ymin=\useKV[TraceG]{Ymin};ymax=\useKV[TraceG]{Ymax};pasx=\useKV[TraceG]{Xstep};pasy=\useKV[TraceG]{Ystep};xu=1cm/\useKV[TraceG]{Xstep};yu=1cm/\useKV[TraceG]{Ystep};grillex=\useKV[TraceG]{PasGrilleX};grilley=\useKV[TraceG]{PasGrilleY};pos=\useKV[TraceG]{LabelC};color colortrace;colortrace=\useKV[TraceG]{CouleurTrace};boolean Grille;Grille=\useKV[TraceG]{Grille};boolean Graduations;Graduations=\useKV[TraceG]{Graduations};}]
+ pair Origine;
+ Origine=(xmin,ymin)+\useKV[TraceG]{Origine};
+
+ vardef sin(expr t) = sind(c*t) enddef;
+
+ vardef cos(expr t) = cosd(c*t) enddef;
+
+ vardef tan(expr t) = sin(t)/cos(t) enddef;
+
+ vardef exp(expr t) = e**t enddef;
+
+ vardef ch(expr x)=(exp(x)+exp(-x))/2 enddef;
+
+ vardef sh(expr x)=(exp(x)-exp(-x))/2 enddef;
+
+ vardef ln(expr t) = mlog(t)/256 enddef;
+
+ vardef arcsin(expr x)=%Définition mathématique en radian
+ pi*angle((sqrt(1-x**2),x))/180
+ enddef;
+
+ vardef arccos(expr x)=%Définition mathématique en radian
+ pi*angle((x,sqrt(1-x**2)))/180
+ enddef;
+
+ path Cb[];
+
+ vardef courbe[](expr a,b,nb)(text texte)=
+ path Courbe;
+ for i:=0 upto nb :
+ x@[i]:=(a+i*(b-a)/nb);
+ x:=x@[i];
+ y@[i]:=texte;
+ endfor ;
+ Cb@:=(x@.0*xu,y@.0*yu)
+ for i:=1 upto nb :
+ ..(x@[i]*xu,y@[i]*yu)
+ endfor;
+ Cb@:=Cb@ shifted (Origine*cm);
+ Courbe=Cb@;
+ Courbe
+ enddef;
+
+ if Grille:
+ drawoptions(withcolor 0.75white);
+ for k=xpart(Origine) step grillex until xmax:
+ trace u*(k,ymin)--u*(k,ymax);
+ endfor;
+ for k=xpart(Origine) step -grillex until xmin:
+ trace u*(k,ymin)--u*(k,ymax);
+ endfor;
+ for k=ypart(Origine) step grilley until ymax:
+ trace u*(xmin,k)--u*(xmax,k);
+ endfor;
+ for k=ypart(Origine) step -grilley until ymin:
+ trace u*(xmin,k)--u*(xmax,k);
+ endfor;
+ drawoptions();
+ fi;
+ if Graduations:
+ for k=1 upto xmax/grillex:
+ dotlabel.bot(LATEX("\num{"&decimal(k)&"}"),(k*xu+xpart(Origine*cm),ypart(Origine*cm)));
+ endfor;
+ for k=-1 downto xmin/grillex:
+ dotlabel.bot(LATEX("\num{"&decimal(k)&"}"),(k*xu+xpart(Origine*cm),ypart(Origine*cm)));
+ endfor;
+ for k=1 upto ymax/grilley:
+ dotlabel.lft(LATEX("\num{"&decimal(k)&"}"),(xpart(Origine*cm),k*yu+ypart(Origine*cm)));
+ endfor;
+ for k=-1 downto ymin/grilley:
+ dotlabel.lft(LATEX("\num{"&decimal(k)&"}"),(xpart(Origine*cm),k*yu+ypart(Origine*cm)));
+ endfor;
+ fi;
+ drawoptions(withpen pencircle scaled1.5);
+ drawarrow (u*(0,ymin)--u*(0,ymax)) shifted (u*(xpart(Origine),0));
+ drawarrow (u*(xmin,0)--u*(xmax,0)) shifted (u*(0,ypart(Origine)));
+ drawoptions();
+ draw courbe1(borneinf,bornesup,100)(#2) withcolor colortrace;
+% % labelisation
+ numeric t;
+ t=pos*length Cb1;
+ pair PT,Tangente;
+ PT:=point (pos*length Cb1) of Cb1;
+ Tangente:=unitvector(direction t of Cb1);
+ label(btex \noexpand\useKV[TraceG]{NomCourbe} etex rotated angle(Tangente),PT+2mm*(Tangente rotated 90));
+% % fin labelisation
+ clip currentpicture to polygone(u*(xmin,ymin),u*(xmax,ymin),u*(xmax,ymax),u*(xmin,ymax));
+ label.rt(btex \useKV[TraceG]{LabelX} etex,u*(xmax,ypart(Origine)));
+ label.top(btex \useKV[TraceG]{LabelY} etex,u*(xpart(Origine),ymax));
+ \end{mpost}
+ \fi
+}
+
+%%%
% Formules
%%%
\setKVdefault[ClesFormule]{Perimetre=false,Aire=false,Volume=false,Surface=carr\'e,Solide=pav\'e,Angle=0,Ancre={(0,0)},Largeur=5cm,Couleur=white}
@@ -12906,7 +13376,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
%%%
\newcommand\Puissances[2]{%
\ensuremath{%
- \xintifboolexpr{#2=0}{1}{\xintifboolexpr{#2>0}{\xdef\total{\fpeval{#2-1}}#1\multido{\i=1+1}{\total}{\times#1}}{\xdef\total{\fpeval{-#2-1}}\frac{1}{#1\multido{\i=1+1}{\total}{\times#1}}}}%
+ \xintifboolexpr{#2==0}{1}{\xintifboolexpr{#2>0}{\xdef\total{\fpeval{#2-1}}#1\multido{\i=1+1}{\total}{\times#1}}{\xdef\total{\fpeval{-#2-1}}\frac{1}{#1\multido{\i=1+1}{\total}{\times#1}}}}%
}%
}
@@ -13870,7 +14340,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
};
\node[yshift=-0.65cm] (T2b) at (T2){};
\ifboolKV[Cards]{Titre}{\node[] at (T2b) {\tiny\useKV[Cards]{NomTitre}};}{},
- \node[rectangle,xshift=5mm,yshift=4.25mm,minimum width=2em,rounded corners,fill=TrameCouleur,draw=black] (R) at (frame.south west) {\color{black}\Large\bfseries #3};
+ \node[rectangle,xshift=5pt,yshift=4.25mm,minimum width=2em,rounded corners,fill=TrameCouleur,draw=black,anchor=west] (R) at (frame.south west) {\color{black}\Large\bfseries #3};
\draw[dashed] (S1) -- (S2);
},
colback=white,
@@ -14124,7 +14594,7 @@ Unite={},Largeur=1cm,Precision=2,Donnee=Valeurs,Effectif=Effectif,Origine=0,Angl
\long\def\ifremain@lines#1\\#2\@nil{%
\csname @\ifx\@empty#2\@empty second\else first\fi oftwo\endcsname}
\long\def\subst@eol#1\\#2\@nil{\addtot@b{#1\\}%
- \ifremain@lines#2\\\@nil{\addtot@b&\subst@eol#2\@nil}{\addtot@b{#2\CodeAfter\xintifboolexpr{\useKV[Tableur]{Ligne}=0 || \useKV[Tableur]{Colonne}=0}{}{\tikz\draw[line width=2pt](row-\fpeval{\useKV[Tableur]{Ligne}+1}-|col-\fpeval{\useKV[Tableur]{Colonne}+1}) rectangle (row-\fpeval{\useKV[Tableur]{Ligne}+1+\useKV[Tableur]{PasL}}-|col-\fpeval{\useKV[Tableur]{Colonne}+1+\useKV[Tableur]{PasC}});}\end{NiceTabular}}}}
+ \ifremain@lines#2\\\@nil{\addtot@b&\subst@eol#2\@nil}{\addtot@b{#2\CodeAfter\xintifboolexpr{\useKV[Tableur]{Ligne}==0 || \useKV[Tableur]{Colonne}==0}{}{\tikz\draw[line width=2pt](row-\fpeval{\useKV[Tableur]{Ligne}+1}-|col-\fpeval{\useKV[Tableur]{Colonne}+1}) rectangle (row-\fpeval{\useKV[Tableur]{Ligne}+1+\useKV[Tableur]{PasL}}-|col-\fpeval{\useKV[Tableur]{Colonne}+1+\useKV[Tableur]{PasC}});}\end{NiceTabular}}}}
\long\def\collectcp@body#1\end{\subst@eol#1\@nil\end}
\newcommand\addtot@b[1]{\t@b\expandafter{\the\t@b#1}}