Forums » Utilisation d'AMC (french) »
! LaTeX error: "kernel/boolean-values-only"
Added by DENIS Sébastien almost 5 years ago
Replies (2)
RE: ! LaTeX error: "kernel/boolean-values-only" - Added by DENIS Sébastien almost 5 years 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 almost 5 years 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)