diff options
author | Norbert Preining <norbert@preining.info> | 2024-03-26 03:03:59 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2024-03-26 03:03:59 +0000 |
commit | 904f56f2c26edc7eb11d5a27579bccbeca29c618 (patch) | |
tree | 8a4d6d2e163e93dd2c13a28db996b419aee856b4 /graphics/pgf | |
parent | 05f8146ef2eea2cd71b9c96583c6d893e6c76af5 (diff) |
CTAN sync 202403260303
Diffstat (limited to 'graphics/pgf')
-rw-r--r-- | graphics/pgf/contrib/profsio/doc/ProfSio-doc-fr.pdf | bin | 461364 -> 467962 bytes | |||
-rw-r--r-- | graphics/pgf/contrib/profsio/doc/ProfSio-doc-fr.tex | 58 | ||||
-rw-r--r-- | graphics/pgf/contrib/profsio/tex/ProfSio.sty | 175 |
3 files changed, 212 insertions, 21 deletions
diff --git a/graphics/pgf/contrib/profsio/doc/ProfSio-doc-fr.pdf b/graphics/pgf/contrib/profsio/doc/ProfSio-doc-fr.pdf Binary files differindex 2aaee91f65..96a9339f05 100644 --- a/graphics/pgf/contrib/profsio/doc/ProfSio-doc-fr.pdf +++ b/graphics/pgf/contrib/profsio/doc/ProfSio-doc-fr.pdf diff --git a/graphics/pgf/contrib/profsio/doc/ProfSio-doc-fr.tex b/graphics/pgf/contrib/profsio/doc/ProfSio-doc-fr.tex index c942195717..89f83f3a1a 100644 --- a/graphics/pgf/contrib/profsio/doc/ProfSio-doc-fr.tex +++ b/graphics/pgf/contrib/profsio/doc/ProfSio-doc-fr.tex @@ -5,8 +5,8 @@ \documentclass[french,a4paper,11pt]{article} \usepackage[margin=2cm,includefoot]{geometry} -\def\TPversion{0.2.2} -\def\TPdate{17 mars 2024} +\def\TPversion{0.2.3} +\def\TPdate{25 mars 2024} %\usepackage[utf8]{inputenc} %\usepackage[T1]{fontenc} \usepackage{amsmath,amssymb} @@ -81,10 +81,10 @@ keywordstyle={\color{violet}},% classoffset=2,% alsoletter={-},% - morekeywords={\MPMPlaceTache,\MPMPlaceNotice,\MPMPlaceDuree,GrapheMPM,TableKarnaugh,\KarnaughCasesResult,\KarnaughBlocRegroup,\MPMPlaceTaches,\MPMPlaceDurees,GrapheTikz,\GrphPlaceSommets,\GrphTraceAretes,\tikzset,\DiagrammeSagittal,\draw,\DiagrammeSagittalCompo,\TableVerite,\SimplificationKarnaugh,\SimplificationBooleenne,\KarnaughCasesAuto,\MatriceAdjacence,\PuissanceMatrice,\NbCheminsLongueur,\FermetureTransitive,\ResolSystemeMatrices,\PresentProdMat,\OpeBinDecHex},% + morekeywords={\MPMPlaceTache,\MPMPlaceNotice,\MPMPlaceDuree,GrapheMPM,TableKarnaugh,\KarnaughCasesResult,\KarnaughBlocRegroup,\KarnaughBlocRegroupAuto,\MPMPlaceTaches,\MPMPlaceDurees,GrapheTikz,\GrphPlaceSommets,\GrphTraceAretes,\tikzset,\DiagrammeSagittal,\draw,\DiagrammeSagittalCompo,\TableVerite,\SimplificationKarnaugh,\SimplificationBooleenne,\KarnaughCasesAuto,\MatriceAdjacence,\PuissanceMatrice,\NbCheminsLongueur,\FermetureTransitive,\ResolSystemeMatrices,\PresentProdMat,\OpeBinDecHex},% keywordstyle={\color{green!50!black}},% classoffset=3,% - morekeywords={CouleurDurees,CouleurFleches,LargeurCases,Epaisseur,Police,CouleurDates,CouleurBords,NoirBlanc,Grille,DecalHorizDeb,DecalVertDeb,DecalHorizFin,DecalVertFin,Coude,SensCoude,Unite,Variables,Swap,Aide,CouleurCases,Decalage,Couleur,Type,Legende,PosVarLaterale,CouleurLegende,CouleurSommets,TypeSommets,Unite,CouleurFT,DimensionSommets,PositionFleches,EchelleFleches,TypeFleche,Droit,Milieu,AngleGauche,AngleDroite,Boucle,GrphStyleArc,GrphStyleSommet,Poids,GrphStylepoids,DistElem,DistEns,LargEns,NomAppli,CouleurE,CouleurAppli,CouleurF,CouleursFleches,TypeFleche,Epaisseur,Labels,Ensembles,PosLabels,PoliceLabels,Offset,NomApplis,CouleursAppli,VF,LargeursColonnes,CouleurEnonce,CodeAvant,CodeApres,StyleAlternatif,PoliceTT,Espace,Couleurs,Contraire,Enonce,Bordure,Sommets,Num,PoliceBordure,De,Vers,Formule,Brut,NomMatrice,Longueur,Complet,NomsMatrices,NomInverse,NomSysteme,Inconnues,OptionNiceMatrix,Base,AffRetenues,AffEgal,SymbDecal,LimiteCapac,CouleurRetenue,Interm,Enonce},% + morekeywords={CouleurDurees,CouleurFleches,LargeurCases,Epaisseur,Police,CouleurDates,CouleurBords,NoirBlanc,Grille,DecalHorizDeb,DecalVertDeb,DecalHorizFin,DecalVertFin,Coude,SensCoude,Unite,Variables,Swap,Aide,CouleurCases,Decalage,Couleur,Type,Legende,PosVarLaterale,CouleurLegende,CouleurSommets,TypeSommets,Unite,CouleurFT,DimensionSommets,PositionFleches,EchelleFleches,TypeFleche,Droit,Milieu,AngleGauche,AngleDroite,Boucle,GrphStyleArc,GrphStyleSommet,Poids,GrphStylepoids,DistElem,DistEns,LargEns,NomAppli,CouleurE,CouleurAppli,CouleurF,CouleursFleches,TypeFleche,Epaisseur,Labels,Ensembles,PosLabels,PoliceLabels,Offset,NomApplis,CouleursAppli,VF,LargeursColonnes,CouleurEnonce,CodeAvant,CodeApres,StyleAlternatif,PoliceTT,Espace,Couleurs,Contraire,Enonce,Bordure,Sommets,Num,PoliceBordure,De,Vers,Formule,Brut,NomMatrice,Longueur,Complet,NomsMatrices,NomInverse,NomSysteme,Inconnues,OptionNiceMatrix,Base,AffRetenues,AffEgal,SymbDecal,LimiteCapac,CouleurRetenue,Interm,Enonce,Decalages,Couleurs,Dense},% keywordstyle={\color{orange}} },% #1 @@ -255,6 +255,8 @@ \section{Historique} +\verb|v0.2.3|~:~~~~Ajout d'une clé [Dense] pour la résolution matricielle de système + commande pour créer les blocs automatiquement avec Karnaugh + \verb|v0.2.2|~:~~~~Ajout d'une clé \textsf{Enonce} pour l'énoncé des systèmes 3×3 \verb|v0.2.1|~:~~~~Opérations posées (en binaire, hexadécimal et décimal) @@ -768,16 +770,21 @@ Les commandes à utiliser dans l'environnement sont : \begin{itemize} \item \motcletex!\KarnaughCasesResult! pour saisir les cases par codage binaire ; \item \motcletex!\KarnaughCasesAuto! pour utiliser l'expression booléenne ; - \item \motcletex!\KarnaughBlocRegroup! ;. + \item \motcletex!\KarnaughBlocRegroup! ou \motcletex!\KarnaughBlocRegroupAuto!. \end{itemize} \vspace*{-\baselineskip}\leavevmode \end{cautionblock} \begin{DemoCode}[listing only] \begin{TableKarnaugh}[clés]<options tikz> + %cases \KarnaughCasesResult(*){contenu binaire des cases} %case par case + %ou \KarnaughCasesAuto(*){expression booléenne} %par une formule + %regroupements \KarnaughBlocRegroup[clés]{coinA}{coinB} + %ou + \KarnaughBlocRegroup[clés]{expression booléenne} \end{TableKarnaugh} \end{DemoCode} % @@ -892,13 +899,15 @@ Pour la commande \texttt{\textbackslash KarnaughCasesAuto}, c'est l'expression b \begin{DemoCode}[listing only] \begin{TableKarnaugh}[clés]<options tikz> - %remplissage des cases + %remplissage des cases, manuellement \KarnaughBlocRegroup[clés]{coinA}{coinB} + %remplissage des cases, automatiquement + \KarnaughBlocRegroupAuto[clés]{expression booléenne} \end{TableKarnaugh} \end{DemoCode} \begin{tipblock} -En ce qui concerne le regroupement des cases par blocs, les \Cle{clés} disponibles sont : +En ce qui concerne le regroupement (manuellement) des cases par blocs, les \Cle{clés} disponibles sont : \begin{itemize} \item \Cle{Couleur} := couleur du \textit{trait} ; \hfill~défaut : \Cle{red} @@ -916,6 +925,24 @@ Les deux arguments obligatoires, et entre \texttt{\{...\}}, correspondent aux \t \vspace*{-\baselineskip}\leavevmode \end{tipblock} +\begin{tipblock} +En ce qui concerne le regroupement (automatiquement) des cases par blocs, les \Cle{clés} disponibles sont : + +\begin{itemize} + \item \Cle{Couleurs} := liste des couleurs des \textit{traits} ; \hfill~défaut : \Cle{red,blue,violet} + \item \Cle{Decalages} := décalages du trait par rapports aux cases.\hfill~défaut : \Cle{2pt,1pt,-1pt} +\end{itemize} + +L'argument obligatoire, et entre \texttt{\{...\}}, correspondent à l'expression booléenne \textit{formatée} : + +\begin{itemize} + \item expression sous forme de \textit{mintermes} simples ; + \item entre parenthèses, et avec les variables dans le même ordre que celui donné en paramètre; + \item avec \texttt{*} pour la barre. +\end{itemize} +\vspace*{-\baselineskip}\leavevmode +\end{tipblock} + \subsection{Exemples} \begin{DemoCode}[] @@ -942,6 +969,13 @@ Les deux arguments obligatoires, et entre \texttt{\{...\}}, correspondent aux \t \end{DemoCode} \begin{DemoCode}[] +\begin{TableKarnaugh}[Swap] + \KarnaughCasesAuto{(ac)+(a*b)+(a*b*c*)+(b*c)} + \KarnaughBlocRegroupAuto{(c)+(a*c*)} +\end{TableKarnaugh} +\end{DemoCode} + +\begin{DemoCode}[] On obtient le tableau de Karnaugh suivant : \begin{TableKarnaugh} [Variables=k/l/m,Unite=1.25cm,CouleurCases=cyan!25,Couleur=darkgray, @@ -1181,7 +1215,7 @@ Les commandes à utiliser dans l'environnement sont : \begin{itemize} \item \motcletex!\GrphPlaceSommets! ; - \item \motcletex!\GrphTraceAretes! ;. + \item \motcletex!\GrphTraceAretes!. \end{itemize} \vspace*{-\baselineskip}\leavevmode \end{cautionblock} @@ -2017,6 +2051,7 @@ En ce qui concerne la résolution \textit{détaillée}, les \Cle{clés} optionne \item \Cle{NomSysteme} := nom du système ; \hfill~défaut : \Cle{\{\}} \item \Cle{Inconnues} := inconnues du système; \hfill~défaut : \Cle{xyz} \item \Cle{Enonce} := booléen pour la première ligne (énoncé) ; \hfill~défaut : \Cle{true} + \item \Cle{Dense} := booléen pour condenser un peu la rédaction ; \hfill~défaut : \Cle{false} \item \Cle{OptionNiceMatrix} := offset pour les matrices avec \motcletex!nicetabular!.\hfill~défaut : \Cle{1pt} \end{itemize} @@ -2081,6 +2116,13 @@ $\text{dét}(A)=\ResolDet$ ; $x=\ResolSolX$ ; $y=\ResolSolY$ et $z=\ResolSolZ$. [xyz] \end{DemoCode} +\begin{DemoCode}[] +\ResolSystemeMatrices[Enonce=false,Dense]<t>%formatage des fractions en tfrac + {2x+y-0.5z=10,x+1/3*y+z=0,y-4z=5}% + [2x+y-\num{0.5}z=10,x+\frac13y+z=0,y-4z=5]% + [xyz] +\end{DemoCode} + \pagebreak \section{Présentation d'un produit matriciel (sans calculs)} diff --git a/graphics/pgf/contrib/profsio/tex/ProfSio.sty b/graphics/pgf/contrib/profsio/tex/ProfSio.sty index 55c01c7e32..169c5b8151 100644 --- a/graphics/pgf/contrib/profsio/tex/ProfSio.sty +++ b/graphics/pgf/contrib/profsio/tex/ProfSio.sty @@ -3,7 +3,8 @@ % : Luatruthtable from Chetan Shirore and Dr. Ajit Kumar https://ctan.org/pkg/luatruthtable \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{ProfSio}[2023/03/17 0.2.2 Pour les enseignants de Maths en BTS SIO] +\ProvidesPackage{ProfSio}[2023/03/25 0.2.3 Pour les enseignants de Maths en BTS SIO] +%0.2.3 Ajout d'une clé [Dense] pour condenser la résolution matricielle de système + commande \KarnaughBlocRegroupAuto pour créer les blocs automatiquement %0.2.2 Ajout d'une clé [enonce] pour la résolution matricielle de système (aff/naff la ligne d'énoncé) %0.2.1 Opérations posées (+,-,×) avec bin/hex/dec %0.2.0 Travail sur les systèmes 3x3 par matrices et la présentation d'un produit matriciel @@ -556,8 +557,6 @@ }% } - - \newcommand\KarnaughBlocRegroup[3][]{% \useKVdefault[blockarnaugh]% \setKV[blockarnaugh]{#1}% @@ -588,6 +587,144 @@ {}% } +\defKV[blocksarnaugh]{% + Decalages=\def\KGHdecalage{#1},% + Couleurs=\def\KGHcouleur{#1} +} + +\setKVdefault[blocksarnaugh]{% + Decalages={2pt,1pt,-1pt},% + Couleurs={red,blue,violet} +} + +\newcommand\KarnaughBlocRegroupAuto[2][]{% + %1 = clés blocs + \useKVdefault[blocksarnaugh]% + \setKV[blocksarnaugh]{#1}% + \itemtomacro\ListeVariablesKGH[1]{\VarTMPA}% + \itemtomacro\ListeVariablesKGH[2]{\VarTMPB}% + \itemtomacro\ListeVariablesKGH[3]{\VarTMPC}% + %substitutions pour placement auto + \StrSubstitute{#2}{\VarTMPA}{AA}[\knghbintransf]% + \StrSubstitute{\knghbintransf}{\VarTMPB}{BB}[\knghbintransf]% + \StrSubstitute{\knghbintransf}{\VarTMPC}{CC}[\knghbintransf]% + %liste des regroupements + \setsepchar{+}% + \readlist*\knghlstblocks{\knghbintransf}% + %liste décalages/couleurs + \setsepchar{,}% + \readlist*\knghlstblockscolors{\KGHcouleur}% + \readlist*\knghlstblocksdecals{\KGHdecalage}% + \xintFor* ##1 in {\xintSeq{1}{\knghlstblockslen}}\do{% + \itemtomacro\knghlstblocks[##1]\tmpblockkngh% + \itemtomacro\knghlstblockscolors[##1]\tmpblockknghcol% + \itemtomacro\knghlstblocksdecals[##1]\tmpblockknghdecal% + \ifboolKV[tblkgh]{StyleAlternatif}% + {% + \IfStrEqCase{\tmpblockkngh}{% + %calculs pour 1 lettre + {(AA)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{42}}% + {(BB)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{32}} + {(CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{41}}% + {(AA*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{22}}% + {(BB*)}{\KarnaughBlocRegroup[Type=Gauche,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{12}\KarnaughBlocRegroup[Type=Droite,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{40}{32}}% + {(CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{42}}% + %calculs pour 2 lettres + {(AABB)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{31}}% + {(AACC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{21}{42}}% + {(AABB*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{30}{42}}% + {(AA*BB)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{22}}% + {(AA*CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{22}}% + {(AA*BB*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{12}}% + {(AACC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{41}}% + {(AA*CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{21}}% + {(BBCC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{31}}% + {(BBCC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{11}{32}}% + {(BB*CC*)}{\KarnaughBlocRegroup[Type=Gauche,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{12}\KarnaughBlocRegroup[Type=Droite,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{41}{32}}% + {(BB*CC)}{\KarnaughBlocRegroup[Type=Gauche,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{11}\KarnaughBlocRegroup[Type=Droite,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{40}{31}}% + %calculs pour 3 lettres + {(AABBCC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{31}}% + {(AABBCC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{21}{32}}% + {(AABB*CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{31}{42}}% + {(AABB*CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{30}{41}}% + {(AA*BBCC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{21}}% + {(AA*BBCC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{11}{22}}% + {(AA*BB*CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{12}}% + {(AA*BB*CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{11}}% + }% + }% + {%styles classiques, normal ou swap + \ifboolKV[tblkgh]{Swap}% + {% + \IfStrEqCase{\tmpblockkngh}{% + %calculs pour 1 lettre + {(AA)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{42}}% + {(BB)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{22}}% + {(CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{32}} + {(AA*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{41}}% + {(BB*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{44}}% + {(CC*)}{\KarnaughBlocRegroup[Type=Gauche,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{12}\KarnaughBlocRegroup[Type=Droite,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{40}{32}}%% + %calculs pour 2 lettres + {(AABB)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{22}}% + {(AACC*)}{\KarnaughBlocRegroup[Type=Gauche,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{12}\KarnaughBlocRegroup[Type=Droite,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{41}{32}}% + {(AABB*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{21}{42}}% + {(AA*BB)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{21}}% + {(AA*CC*)}{\KarnaughBlocRegroup[Type=Gauche,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{11}\KarnaughBlocRegroup[Type=Droite,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{40}{31}}% + {(AA*BB*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{41}}% + {(AACC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{11}{32}}% + {(AA*CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{31}}% + {(BBCC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{22}}% + {(BBCC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{12}}% + {(BB*CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{30}{42}}% + {(BB*CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{32}}% + %calculs pour 3 lettres + {(AABBCC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{11}{22}}% + {(AABBCC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{12}}% + {(AABB*CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{31}{42}}% + {(AABB*CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{31}}% + {(AA*BBCC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{21}}% + {(AA*BBCC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{11}}% + {(AA*BB*CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{30}{41}}% + {(AA*BB*CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{31}}% + }% + }% + {% + \IfStrEqCase{\tmpblockkngh}{% + %calculs pour 1 lettre + {(AA)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{42}}% + {(BB)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{22}}% + {(CC)}{\KarnaughBlocRegroup[Type=Gauche,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{12}\KarnaughBlocRegroup[Type=Droite,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{40}{32}}% + {(AA*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{41}}% + {(BB*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{44}}% + {(CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{32}}% + %calculs pour 2 lettres + {(AABB)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{22}}% + {(AACC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{11}{32}}% + {(AABB*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{21}{42}}% + {(AA*BB)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{21}}% + {(AA*CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{31}}% + {(AA*BB*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{41}}% + {(AACC)}{\KarnaughBlocRegroup[Type=Gauche,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{12}\KarnaughBlocRegroup[Type=Droite,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{41}{32}}% + {(AA*CC)}{\KarnaughBlocRegroup[Type=Gauche,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{11}\KarnaughBlocRegroup[Type=Droite,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{40}{31}}% + {(BBCC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{12}}% + {(BBCC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{22}}% + {(BB*CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{32}}% + {(BB*CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{30}{42}}% + %calculs pour 3 lettres + {(AABBCC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{01}{12}}% + {(AABBCC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{11}{22}}% + {(AABB*CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{21}{32}}% + {(AABB*CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{30}{41}}% + {(AA*BBCC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{00}{11}}% + {(AA*BBCC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{10}{21}}% + {(AA*BB*CC*)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{20}{31}}% + {(AA*BB*CC)}{\KarnaughBlocRegroup[Type=Centre,Couleur=\tmpblockknghcol,Decalage=\tmpblockknghdecal]{30}{41}}% + }% + }% + }% + }% +} + %------Graphes \defKV[GraphSIO]{% Police=\def\GrphPoliceSommets{#1},% @@ -2068,7 +2205,8 @@ end Inconnues=xyz,% Brut=false,% OptionNiceMatrix={1pt},% - Enonce=true + Enonce=true,% + Dense=false } \NewDocumentCommand\ResolSystemeMatrices{ O{} D<>{} m O{#3} O{xyz} }{% @@ -2199,21 +2337,32 @@ end }% {}% Matriciellement, le système s'écrit sous la forme $\tmpnamematA\times \tmpnamematX = \tmpnamematB$ avec :% - \[% - \tmpnamematA = \begin{pNiceMatrix}[cell-space-limits=\ResolSysMatOpt] {\MatAffA}&{\MatAffB}&{\MatAffC} \\ {\MatAffD}&{\MatAffE}&{\MatAffF} \\ {\MatAffG}&{\MatAffH}&{\MatAffI} \end{pNiceMatrix} - \text{ ; } - \tmpnamematX = \begin{pNiceMatrix}[cell-space-limits=\ResolSysMatOpt] \tmpinconnuex \\ \tmpinconnuey \\ \tmpinconnuez \end{pNiceMatrix} - \text{ et } - \tmpnamematB = \begin{pNiceMatrix}[cell-space-limits=\ResolSysMatOpt] {\MatAffBA} \\ {\MatAffBB} \\ {\MatAffBC} \end{pNiceMatrix} - \]% + \ifboolKV[resolsysmatrix]{Dense}% + {% + ~$\tmpnamematA = \begin{pNiceMatrix}[cell-space-limits=\ResolSysMatOpt] {\MatAffA}&{\MatAffB}&{\MatAffC} \\ {\MatAffD}&{\MatAffE}&{\MatAffF} \\ {\MatAffG}&{\MatAffH}&{\MatAffI} \end{pNiceMatrix}$ ; $\tmpnamematX = \begin{pNiceMatrix}[cell-space-limits=\ResolSysMatOpt] \tmpinconnuex \\ \tmpinconnuey \\ \tmpinconnuez \end{pNiceMatrix}$ et $\tmpnamematB = \begin{pNiceMatrix}[cell-space-limits=\ResolSysMatOpt] {\MatAffBA} \\ {\MatAffBB} \\ {\MatAffBC} \end{pNiceMatrix}$.\\ + }% + {% + \[% + \tmpnamematA = \begin{pNiceMatrix}[cell-space-limits=\ResolSysMatOpt] {\MatAffA}&{\MatAffB}&{\MatAffC} \\ {\MatAffD}&{\MatAffE}&{\MatAffF} \\ {\MatAffG}&{\MatAffH}&{\MatAffI} \end{pNiceMatrix} + \text{ ; } + \tmpnamematX = \begin{pNiceMatrix}[cell-space-limits=\ResolSysMatOpt] \tmpinconnuex \\ \tmpinconnuey \\ \tmpinconnuez \end{pNiceMatrix} + \text{ et } + \tmpnamematB = \begin{pNiceMatrix}[cell-space-limits=\ResolSysMatOpt] {\MatAffBA} \\ {\MatAffBB} \\ {\MatAffBC} \end{pNiceMatrix} + \]% + }% \xintifboolexpr{\DETMATRICE == 0}% {% La matrice $\tmpnamematA$ n'est pas inversible, donc le système n'admet pas de solution (ou admet une unifinité de solutions).% }% {% La matrice $\tmpnamematA$ est inversible, et :% - \[\tmpnamematA\times \tmpnamematX = \tmpnamematB \implies \underbrace{\ResolSysMatInv \times \tmpnamematA}_{{=}I_3} \times \tmpnamematX = \ResolSysMatInv \times \tmpnamematB \implies I_3 \times \tmpnamematX = \ResolSysMatInv\times \tmpnamematB \implies \tmpnamematX=\ResolSysMatInv\times \tmpnamematB.\] - % + \ifboolKV[resolsysmatrix]{Dense}% + {% + ~$\tmpnamematA\times \tmpnamematX = \tmpnamematB \implies \underbrace{\ResolSysMatInv \times \tmpnamematA}_{{=}I_3} \times \tmpnamematX = \ResolSysMatInv \times \tmpnamematB \implies \tmpnamematX=\ResolSysMatInv\times \tmpnamematB$.\\% + }% + {% + \[\tmpnamematA\times \tmpnamematX = \tmpnamematB \implies \underbrace{\ResolSysMatInv \times \tmpnamematA}_{{=}I_3} \times \tmpnamematX = \ResolSysMatInv \times \tmpnamematB \implies I_3 \times \tmpnamematX = \ResolSysMatInv\times \tmpnamematB \implies \tmpnamematX=\ResolSysMatInv\times \tmpnamematB.\]% + }% La calculatrice nous donne $\tmpnamematX = \begin{pNiceMatrix}[cell-space-limits=\ResolSysMatOpt] {\MatResA} \\ {\MatResB} \\ {\MatResC} \end{pNiceMatrix}$. Ainsi on obtient $\tmpinconnuex=\MatResA$ et $\tmpinconnuey=\MatResB$ et $\tmpinconnuez=\MatResC$.% }% }% |