! LaTeX error: "kernel/boolean-values-only"

Added by DENIS Sébastien 2 months ago

[Liquid Syntax Error] Tag '{%' was not properly terminated with regexp: /\%\}/
Cela marchait avant mais plus maintenant je ne comprend pas pourquoi.... il n'accepte plus par exemple \leStrict comme true ou false... snif <pre> \newcommand{\AAC}[9]{% \StrLeft{#1}{1}[\digitUn]%recupere dans \digitUn la valeur du premier chiffre \IfStrEq{\digitUn}{-}{\def\led{true}\FPeval\otDigitSigne{clip(1)}}%si premier chiffreest - sign=true otDigitSigne pour le pas oter le digit du signe dans \len {\def\led{#6}\FPeval\otDigitSigne{clip(0)}}% dans AMCnumeric sinon garde le choix indiqué par #6 \IfInteger{#1}%si le nombre est entier {\StrLen{#1}[\Len]\FPeval\chiffres{clip(\Len +#7 + #8 - \otDigitSigne)}\FPeval% \decimales{clip(#7)}}%-> Accolade du vrai du si {\StrLen{#1}[\Len]\StrPosition{#1}{.}[\Position]\FPeval\chiffres{clip(\Len -1 + #7 + #8 - \otDigitSigne)}\FPeval\decimales{clip(\Len - \Position + #7)}}%->accolade du faux si \FPeval\SomDigitSup{clip(#7 + #8)}% \IfEq{0}{\SomDigitSup}{\def\leStict{true}}{\def\leStict{false}}% \AMCnumericChoices{#1}{digits=\chiffres,decimals=\decimales,exact=#2,scoreexact=#3,approx=#4,scoreapprox=#5,sign=\led,vertical=#9,borderwidth=.2mm,% bordercol=gray,hspace=.2ex,vspace=0em,reverse=false,strict=\leStict,Tpoint={\Large$\prime$\vspace*{-.1em}}% }% }%->accolade de la commande>accolade de la commande </pre>

Replies (2)

RE: ! LaTeX error: "kernel/boolean-values-only" - Added by DENIS Sébastien 2 months ago

un peu plus lisible....

\newcommand{\AAC}[9]{
\StrLeft{#1}{1}[\digitUn]
\IfStrEq{\digitUn}{-}{\def\led{true}\FPeval\otDigitSigne{clip(1)}}
{\def\led{#6}\FPeval\otDigitSigne{clip(0)}}
 \IfInteger{#1}
  {\StrLen{#1}[\Len]\FPeval\chiffres{clip(\Len +#7 + #8 - \otDigitSigne)}\FPeval
  \decimales{clip(#7)}}
{\StrLen{#1}[\Len]\StrPosition{#1}{.}[\Position]\FPeval\chiffres{clip(\Len -1 + #7 + #8 - \otDigitSigne)}\FPeval\decimales{clip(\Len - \Position + #7)}}
\FPeval\SomDigitSup{clip(#7 + #8)}
\IfEq{0}{\SomDigitSup}{\def\leStict{true}}{\def\leStict{false}}
\AMCnumericChoices{#1}{digits=\chiffres,decimals=\decimales,exact=#2,scoreexact=#3,approx=#4,scoreapprox=#5,sign=\led,vertical=#9,borderwidth=.2mm,
bordercol=gray,hspace=.2ex,vspace=0em,reverse=false,strict=\leStict,Tpoint={\Large$\prime$\vspace*{-.1em}}
}
}

RE: ! LaTeX error: "kernel/boolean-values-only" - Added by DENIS Sébastien 2 months ago

Il y a ca qui marche

avec
#1~:~valeur\\
#2~:~distance exacte . distance approximative\\%exemple: 0.3 ie distance exacte 0 dist approx 3
#3~:~nbre points si exact\\%
#4~:~ non utlisise
#5~:~points si distance approx exacte\\
#6~:~signe si positif (true false)\\
#7~:~ nbr de digit nbr de décimales a ajouter en plus\\ exemple 2.3 2digits 3decimales en notation scient ajoute 2+3 =5 decimales
#8~:~0 notation décimale n notation scientifique avec n le nombre de digits de la puissance\\
#9~:~|affichage vertical si true\\

\newcommand{\AMCNumeriqAuto}[9]{

    \FPeval{\DigitNotScient}{round(#8,0)}

    \FPeval{\DistExacte}{round(#2,0)}
    \FPeval{\DistApprox}{round((#2 - \DistExacte)*10,0)}

    \FPeval{\DigitEnPlus}{round(#7,0)}
    \FPeval{\DecimalEnPlus}{round((#7 - \DigitEnPlus)*10,0)}

    \StrLeft{#1}{1}[\digitUn]%recupere dans \digitUn la valeur du premier chiffre
    \IfStrEq{\digitUn}{-}{\FPeval\otDigitSigne{clip(1)}}%si premier chiffreest - sign=true otDigitSigne pour le pas oter le digit du signe dans \len
    {\FPeval\otDigitSigne{clip(0)}}% dans AMCnumeric sinon garde le choix indiqué par #6
    \IfInteger{#1}%si le nombre est entier
    {\StrLen{#1}[\Len]\FPeval\chiffres{clip(\Len +\DecimalEnPlus + \DigitEnPlus - \otDigitSigne)}
    \FPeval\decimales{clip(\DecimalEnPlus)}}%-> Accolade du vrai du si
    {\StrLen{#1}[\Len]\StrPosition{#1}{.}[\Position]\FPeval\chiffres{clip(\Len -1 + \DecimalEnPlus + \DigitEnPlus - \otDigitSigne)}\FPeval\decimales{clip(\Len - \Position + \DecimalEnPlus)}}%->accolade du faux si

    \FPeval\decimalNotScient{clip(\chiffres-1)}

    \IfStrEq{\digitUn}{-}
        {\ifthenelse{\equal{\DigitNotScient}{0}}
            {\AMCnumericChoices{#1}{digits=\chiffres, decimals=\decimales, exact=\DistExacte, scoreexact=#3, approx=\DistApprox, scoreapprox=#5 ,sign=true, vertical=#9, borderwidth=0.1mm, backgroundcol=lightgray!35}}
            {\AMCnumericChoices{#1}{digits=\chiffres , decimals=\decimalNotScient, exact=\DistExacte, scoreexact=#3, approx=\DistApprox, scoreapprox=#5 ,sign=true, vertical=#9, borderwidth=0.1mm, exponent=\DigitNotScient, backgroundcol=lightgray!35}}
        }
        {\ifthenelse{\equal{\DigitNotScient}{0}}
            {\AMCnumericChoices{#1}{digits=\chiffres, decimals=\decimales, exact=\DistExacte, scoreexact=#3, approx=\DistApprox, scoreapprox=#5 ,sign=#6, vertical=#9, borderwidth=0.1mm, backgroundcol=lightgray!35}}
            {\AMCnumericChoices{#1}{digits=\chiffres , decimals=\decimalNotScient, exact=\DistExacte, scoreexact=#3, approx=\DistApprox, scoreapprox=#5 ,sign=#6, vertical=#9, borderwidth=0.1mm, exponent=\DigitNotScient, backgroundcol=lightgray!35}}
        }
    }

que l'on utilise comme suit

                \begin{questionmultx}{Demarche-4:codageMasse22}
                    $Echantillon \, n^o 2$

                    masse $m_2 =$ ...237.2....
                     \AMCNumeriqAuto{-237.2}%valeur
                         {0.2}%distance exact et approximative 1.1
                         {1}%point
                         {15}%non utilisé
                         {.5}%point pour approximatif
                         {false}%affichage du signe meme si nbre positif
                         {0.0}% entier: nbre de digit a ajouter; decimale nbre de décimales
                         {2}%entier: 0 not décimale n:not scient avec n le nbre de digit pour la puissance de dix; décimale 0  1 horizontal
                         {true}%affichage vertical si true

                  \end{questionmultx}

On peut donc:
afficher le nombre de digit et decimal necessaires de maniere automatique (exemple: generation de valeur aléatoire)
choisir la notation décimale ou scientifique
- ajouter des digit et des decimales en notation decimale
- ajouter des decimales en notation scientifique
- afficher horizontalement ou verticalement
- choisir d'afficher ou non le signe dans le cas d'un nombre positif (affichage automatique du + - si le nbre est négatif
- choisir la distance exacte et celle approximative
- choisir le bareme pour une réponse exacte et pour une réponse approximative

je pense qu'il y a moyen d'enlever une boucle if en bas mais je n'arrive plus à faire sign=\unevariable.. ca mache pu!

(1-2/2)