\makeatletter
\newcommand*\SiSousChaineDansChaine[2]{% est ce que la sous chaine #1 se trouve dans #2 ?
\def\la@chaine##1#1##2\@nil{ \def\la@fin{##2} \ifx\la@fin\@empty \expandafter\@secondoftwo \else
\expandafter\@firstoftwo \fi
} \expandafter\la@chaine#2#1\@nil
}
\newcommand*{\MembreGauche}[1]{%renvoie le membre gauche : ce qui est à gauche de =
\def\a@testergauche##1=##2\@nil{##1}
\expandafter\a@testergauche#1\@nil
}
\newcommand*{\MembreDroite}[1]{%renvoie le membre gauche : ce qui est à droite de = et avant *
\SiSousChaineDansChaine{*}{#1}{\def\a@testerdroite##1=##2*##3\@nil{##2}}{\def\a@testerdroite##1=##2\@nil{##2}}
\expandafter\a@testerdroite#1\@nil
}
\newcommand*{\LeCoeff}[1]{%renvoie le coeff : ce qui est à droite de *
\def\a@testercoeff##1*##2\@nil{##2} \expandafter\a@testercoeff#1\@nil
}
\makeatother
\newcommand*{\Systeme}[3][0pt]{%
\SiSousChaineDansChaine{=}{#2}{ \SiSousChaineDansChaine{=}{#3}{ \ensuremath{
\left\lbrace
\begin{aligned}
\MembreGauche{#2}&=\MembreDroite{#2}\SiSousChaineDansChaine{*}{#2}{&\scriptstyle\times&\scriptstyle\LeCoeff{#2}}{}\\[#1]
\MembreGauche{#3}&=\MembreDroite{#3}\SiSousChaineDansChaine{*}{#3}{&\scriptstyle\times&\scriptstyle\LeCoeff{#3}}{}
\end{aligned}
\right.
}
}
{Pas de signe =}
}
{Pas de signe =}
}

—
Syracuse — Dernière modification : 7 janvier 2008 (0.1s - 3781903 - 21 novembre 2008)