\documentclass[4pt,a4paper]{article}
\usepackage[french,francais]{babel}
\frenchbsetup{StandardLists=true,, CompactItemize=false, ReduceListSpacing=true}%changer les item
\usepackage{enumitem}
\renewcommand{\labelitemi}{\textbullet}%changer les item


%\usepackage{amsmath,amssymb,amsfonts,mathtools}
\usepackage{array,multirow,tabularx}

%Obligatoire -> permet de créer la liste des compétences et de les compter
\usepackage{xstring}%pour travailler sur les chaînes
\usepackage{fp,multido}

\usepackage[francais,bloc,correcindiv]{automultiplechoice}%%outsidebox:chiffre et lettre en dehors de la case à cocher,noshufflegroups
\usepackage[french]{cleveref}
\usepackage{xstring,tikz,ifthen}

\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{fourier}

\usepackage{amsmath,amssymb,amsfonts,mathtools,amsthm, pgfmath}
\usepackage{array,multirow,tabularx}
\usepackage{fp,multido}

\usepackage{pst-all,pst-circ,pst-labo,pst-osci}%affichage de schéma de physique
\usepackage[inter-unit-product={.},output-decimal-marker={,},group-minimum-digits=4, detect-weight=true, detect-inline-weight = math]{siunitx}%ecriture scientifique et iunités

\usepackage[version=4]{mhchem}

\usepackage{graphicx}
\usepackage{xcolor}
\usepackage{pgf,tikz}%
\usetikzlibrary{arrows,patterns}
\usepackage{wrapfig}
\usepackage{numprint}

\usepackage{fp}%effectuer des calculs et des random
\usepackage{relsize}

\usepackage{multicol}
\usepackage{csvsimple}%pour préremplir les copies avec un fichier csv

\geometry{hmargin=1cm,headheight=.5cm,headsep=0.6cm%
,footskip=.5cm,top=1.8cm,bottom=1.2cm}

\renewcommand{\familydefault}{\sfdefault}






%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%		COMMANDE COMPÉTENCES CYCLE 4                                                                     %%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%% La commande doit avoir deux arguments :
%%%% - les compétences évaluées séparées par une virgule /!\ Respecter la casse
%%%% - le label de la question

%*******ajoute le nom de la question (label) à la liste de la compétence,
%*******affiche le cadre pour l'enseignant
\newcommand{\Competences}[2]{{\raggedleft%\vspace*{-.8em}%
%
%
\StrCount{#1}{,}[\Boucle]%compte le nombre de , -> nb compétences+1
\FPeval\Boucle{clip(1+\Boucle)}%
\xdef\ListeCompetences{,#1,}%\ListeCompetences%Ajout de virgules pour encadrer les compétences puis les sélectionner
%
\multido{\i=1+1}{\Boucle}{%****
\FPeval\j{clip(1+\i)}%position suivante de la virgule
\StrBetween[\i,\j]{\ListeCompetences}{,}{,}[\CompetenceEtudiee]%prélève la compétence entre 2 virgules
%
\AMCboxStyle{size=2ex,down=-.1ex}%mise en forme des cases
\def\AMCbeginQuestion##1##2{}\AMCquestionNumberfalse\AMCnobloc%enlever Question n° X 
%
\fcolorbox{gray}{gray!30}{%%%-> juste pour la décoration
\begin{question}{\CompetenceEtudiee:#2}\bareme{v=1, p=1, e=1}%
\AMCnoCompleteMulti\AMCdontAnnotate%
\def\AMCbeginAnswer{\dots}\def\AMCendAnswer{}%-> personnalisation de l'affichage
%Affichage de la compétence complète
\IfStrEq{\CompetenceEtudiee}{Demarche}{\small{Pratiquer des démarches scientifiques}~}{\relax}%
\IfStrEq{\CompetenceEtudiee}{Concevoir}{\small{Concevoir, créer, réaliser}~}{\relax}%
\IfStrEq{\CompetenceEtudiee}{Approprier}{\small{S'approprier des outils et des méthodes}~}{\relax}%
\IfStrEq{\CompetenceEtudiee}{Langage}{\small{Pratiquer des langages}~}{\relax}%
\IfStrEq{\CompetenceEtudiee}{Outils}{\small{Mobiliser des outils numériques}~}{\relax}%
\IfStrEq{\CompetenceEtudiee}{Comportement}{\small{Adopter un comportement éthique et responsable}~}{\relax}%
\IfStrEq{\CompetenceEtudiee}{Situer}{\small{Se situer dans l'espace et dans le temps}~}{\relax}%
 \begin{reponsesperso}[o]\bareme{v=1,p=1}%-> affichage des cases et des points affectés / peut être modifié
\mauvaise{{\hspace*{-1pt}N.A.}}\bareme{1}
\hspace*{4pt}\mauvaise{{\hspace*{-2pt}E.C.A.}}\bareme{2}
\hspace*{4pt}\mauvaise{{\hspace*{-2pt}A}}\bareme{3}
\hspace*{4pt}\bonne{{\hspace*{-2pt}M}}\bareme{4}%
\end{reponsesperso}%
\end{question}
}%%%%fin fcolorbox
%Ajout de la compétence dans chaque liste
\IfStrEqCase{\CompetenceEtudiee}{%***
{Demarche}{\xdef\ListeDemarche{\ListeDemarche,\AMCstudentlabel{#2}}}%
{Concevoir}{\xdef\ListeConcevoir{\ListeConcevoir,\AMCstudentlabel{#2}}}%
{Approprier}{\xdef\ListeApproprier{\ListeApproprier,\AMCstudentlabel{#2}}}
{Langage}{\xdef\ListeLangage{\ListeLangage,\AMCstudentlabel{#2}}}%
{Outils}{\xdef\ListeOutils{\ListeOutils,\AMCstudentlabel{#2}}}%
{Comportement}{\xdef\ListeComportement{\ListeComportement,\AMCstudentlabel{#2}}}%
{Situer}{\xdef\ListeSituer{\ListeSituer,\AMCstudentlabel{#2}}}%
}%***
\endgraf\vspace*{1pt}%%Saut de ligne puis espace pour afficher la compétence suivante
}%**** multido
\smallskip}%%raggedleft
}

%%%%%%%%%%%%%%%%%%%ouverture exemplaire%%%%%%%%%%%%%
\newcommand{\sujet}{
\onecopy{1}{%on ne met qu'une copie pour l'association depuis un fichier csv


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%					Création des listes des compétences											%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\ListeDemarche{}%
\def\ListeConcevoir{}%
\def\ListeApproprier{}%
\def\ListeLangage{}%
\def\ListeOutils{}%
\def\ListeComportement{}%
\def\ListeSituer{}%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%				FIN  	Création des listes des compétences, du score  														%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%










%%%%%%%%%%%%%%%%%En tête de la copie %%%%%%%%%%%%%%%%

\champnom{\fbox{    
        \begin{minipage}{.98\linewidth}
          \Large\bf\classe{}~\nom{}~\prenom{}\normalsize{}        
          \vspace*{-1mm}
        \end{minipage} }} 



%%%%%%%%%%%%%%%%%%%%Fin de l'entête de la copie%%%%%%%%%%%%%%%%%%%%




%%%%%%%%%%%%%%%%%%%%Restitution des questions%%%%%%%%%%%%%%%%%%%%
\AMCsection{QUESTIONS OUVERTES}
   \restituegroupe{Ouvert}

\AMCsection{QUESTIONS FERMEES}
	\restituegroupe{Ferme}
	\restituegroupe{Test}
	\begin{multicols}{3}
		\restituegroupe{ValVolLiquid}
	\end{multicols}

\AMCsection{COMPETENCES TRANSVERSALES sur l'ensemble du devoir}
		\restituegroupe{CompetTransversale}


%%%%%%%%%%%%%%%%%%%%Fin des questions%%%%%%%%%%%%%%%%%%%%

\newpage
\crefname{question}{}{}% Efface questions

%si la liste est vide inutile d'afficher la ligne du tableau
\noindent\begin{tabularx}{\linewidth}{|X|>{\centering\arraybackslash}X|c|c|}
\hline 
\rule[-0ex]{0pt}{2ex} Compétences & Questions & \% réussite & niveau atteint \\ 
\hline 

\IfEq{\ListeDemarche}{}{\relax}{\rule[-0ex]{0pt}{2ex} Pratiquer des démarches scientifiques &%
\StrGobbleLeft{\ListeDemarche}{1}[\ListeDemarche]%supprime la 1ere virgule
\cref{\ListeDemarche}\par \cpageref{\ListeDemarche}  & &}


\IfEq{\ListeConcevoir}{}{\relax}{ \\\hline \rule[-0ex]{0pt}{2ex} Concevoir, créer, réaliser & %
\StrGobbleLeft{\ListeConcevoir}{1}[\ListeConcevoir]%
\cref{\ListeConcevoir}\par \cpageref{\ListeConcevoir} & & }

\IfEq{\ListeApproprier}{}{\relax}{\\\hline  \rule[-0ex]{0pt}{2ex} S'approprier des outils et des méthodes &%
\StrGobbleLeft{\ListeApproprier}{1}[\ListeApproprier]%
 \cref{\ListeApproprier}\par \cpageref{\ListeApproprier}  & &   }

\IfEq{\ListeLangage}{}{\relax}{\\\hline \rule[-0ex]{0pt}{2ex} Pratiquer des langages &%
\StrGobbleLeft{\ListeLangage}{1}[\ListeLangage]%
\cref{\ListeLangage}\par \cpageref{\ListeLangage} & & }

\IfEq{\ListeOutils}{}{\relax}{\\\hline  \rule[-0ex]{0pt}{2ex} Mobiliser des outils numériques &%
\StrGobbleLeft{\ListeOutils}{1}[\ListeOutils]%
 \cref{\ListeOutils}\par \cpageref{\ListeOutils} & &  }

\IfEq{\ListeComportement}{}{\relax}{\\\hline \rule[-0ex]{0pt}{2ex} Adopter un comportement éthique et responsable &%
\StrGobbleLeft{\ListeComportement}{1}[\ListeComportement]%
 \cref{\ListeComportement}\par \cpageref{\ListeComportement} & &  }

\IfEq{\ListeSituer}{}{\relax}{\\\hline  \rule[-0ex]{0pt}{2ex} Se situer dans l'espace et dans le temps & %
\StrGobbleLeft{\ListeSituer}{1}[\ListeSituer]%
\cref{\ListeSituer}\par \cpageref{\ListeSituer} & & }

\\\hline 
\end{tabularx} 


\AMCassociation{\identifiant}%association avec la liste etudiant dans le fichier csv
\formulaire
%\AMCaddpagesto{2}%pour que tous les sujets aient le même nbre de pages
\clearpage%%%%%%%%remplacer par \AMCcleardoublepage si sujet nb pages impaires
}}

%%%%%%%%%%%%%%%%%%%fermeture exemplaire%%%%%%%%%%%%%






\begin{document}
\setdefaultgroupmode{withreplacement}

%%%%%%%%%%%%%%%%%%%%%%%%%% Préparation des groupes%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%début des groupes%%%%%%%%%%%%%%%%%%%%%%%%%%


\element{Ouvert}{
 \begin{question}{Langage:CompetenceProf}\bareme{v=1, p=1, e=1, b=4}\dag\dag~
 	Question ouverte avec une compétence. score 1, 2, 3, 4 \newline
	%Affichage de la compétence complète
	\def\AMCotextReserved{~~Pratiquer des langages~~~\emph{Reservé}}
	\AMCOpen{lines=5,dots=false}{\mauvaise{N.A.~~}\bareme{1},\mauvaise{E.C.A.~~}\bareme{2},\mauvaise{A~~}\bareme{3},\bonne{M~~}\bareme{4}}
 \end{question}
}

\element{Ouvert}{
 \begin{question}{QuestionInutile}\dag\dag~\QuestionIndicative%En inscrivant \QuestionIndicative, la question ne sera pas comptée
	Question ouverte avec plusieurs compétences. score 1, 2, 3, 4 par compétence.\newline
	\fcolorbox{black}{white}{.............\newline .....................................\newline .....................................\newline ....................................}
 \end{question}
\Competences{Situer,Langage,Concevoir}{CompetenceMultiProf}%{compétences}{label}
}


\element{Ferme}{
 \begin{question}{Langage:competenceEleveRepSimple}\bareme{v=.25,p=.25, e=.25, m=.25}\dag~
	\def\AMCbeginAnswer{\dots}\def\AMCendAnswer{}%-> personnalisation de l'affichage
	%Affichage de la compétence complète
	\fcolorbox{gray}{gray!30}{\small{~Pratiquer des langages~}}~%
	Question (l’élève coche lui-même) qui évalue une compétence  : score de 1 pt si juste 0.25 sinon. 
	\begin{multicols}{4}
		\begin{reponses}
   			\bonne{$BONNE$}
   			\mauvaise{$F1$}
    		\mauvaise{$F2$ }
    		\mauvaise{$F3$}
  		\end{reponses}
	\end{multicols}
 \end{question}
}


\element{Test}{

\begin{questionmult}{Langage:competenceeleveMULT}\bareme{v=.25,p=.25, e=.25, m=.25, formula= (NBC-.5*NMC)/NB}\dag\dag~
\def\AMCbeginAnswer{\dots}\def\AMCendAnswer{}%-> personnalisation de l'affichage
%Affichage de la compétence complète
\fcolorbox{gray}{gray!30}{\small{~Pratiquer des langages~}}~%
Question multiple une competence corrigée par l'eleve mini=.25 max=1	
		\vspace{-2.5ex}
  	\begin{multicols}{3}\AMCBoxedAnswers 
		\begin{reponses}
			\bonne{juste1}
			\bonne{juste2}
			\mauvaise{faux}
			\mauvaise{faux2}
			\mauvaise{faux3}
			\mauvaise{faux4}
		\end{reponses}
	\end{multicols}
	\explain{a corriger}
\end{questionmult}
}


\element{ValVolLiquid}{
 \begin{questionmultx}{Langage:essainumeris}\bareme{v=0.25, p=0.25, e=.25}  \dag~
 \def\AMCbeginAnswer{\dots}\def\AMCendAnswer{}%-> personnalisation de l'affichage
%Affichage de la compétence complète
{\fcolorbox{gray}{gray!30}{\small{~Pratiquer des langages}~}}~%
 Un codage numérique une compétence min=.25 max=1\vspace{-1ex}
\AAC{25}{0}{1}{5}{.5}{true}{0}{0}{false}%valeur | distance exact| point| distanceapprox |point| signe si positif| ajout decimal | ajout de digit |affichage vertical si true
\end{questionmultx}
}





\element{ValVolLiquid}{
	\FPeval\DeciU{2}%nombre de décimales du chiffre 1
	\FPeval\nbreDeci{clip(DeciU+1)}%nombre de décimales à afficher
	\FPeval\nbreDigit{clip(nbreDeci+2)}
	\FPeval\MantU{trunc(-1 - random * 9 + 0.1,\DeciU)}%première mantisse entre 1 et 1.99
	\FPeval\PuisU{round(10+random*7,0)}%première puissance de dix
	\FPeval\nombre{clip((MantU)*10^(PuisU))}
 \begin{questionmultx}{Q5}\dag\dag\dag~
	nombre \num[round-precision=\nbreDeci,round-mode=figures,%
	scientific-notation=true]{\nombre}. 
	\AMCnumericChoices{\MantU}{digits=\nbreDigit,strict=false,scoring=true%
	,decimals=\nbreDeci,exact=1,scoreexact=.75,sign=true}
 \end{questionmultx}
 \EffacementNumeroQuestion
 \begin{questionmultx}{Q5'}
 \vspace{-4ex}
	\AMCnumericChoices{\PuisU}{digits=3,strict=false,scoring=true,exact=1,scoreexact=1,sign=true,Tsign={${\times 10}$}}
 \end{questionmultx}
}

\element{CompetTransversale}{
\EffacementNumeroQuestion
 \begin{question}{QuestionInutile}\QuestionIndicative%En inscrivant \QuestionIndicative, la question ne sera pas comptée
 \end{question}
\Competences{Situer,Langage,Concevoir}{CompetenceMultiProf}%{compétences}{label}
}


\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,reverse=false,strict=\leStict,Tpoint={\Large$\prime$\vspace*{-.1em}}%
}
}%->accolade de la commande>accolade de la commande


\newcounter{decalVirg}\newcounter{compteurDigitPuis}\newcounter{compteurQuestNumeric}
\newcounter{compteurPuissance}\setcounter{compteurQuestNumeric}{1}

\newcommand{\AACPuis}[9]{%
\setcounter{decalVirg}{0}
\setcounter{compteurDigitPuis}{0}
\setcounter{compteurPuissance}{0}
\StrLeft{#1}{1}[\PremierDigit]%recupere dans \PremierDigit la valeur du premier chiffre
\IfStrEq{\PremierDigit}{-}{\def\AffichageSigne{true}\FPeval\otDigitSigne{clip(1)}\StrCut{#1}{-}\partieVide\partiepositive \def\rajoutSigneFin{true}}%si premier chiffreest - sign=true otDigitSigne pour le pas oter le digit du signe dans \len
{\def\AffichageSigne{#6}\FPeval\otDigitSigne{clip(0)}\StrCut{#1}{-}\partiepositive\partieVide \def\rajoutSigneFin{false}}% dans AMCnumeric sinon garde le choix indiqué par #6
\StrCut{\partiepositive}{.}\partieEntiere\partieDecimale %On sépare autour de la virgule; s'il n'y a pas de virgule \partiedecimale est vide
\StrLen{\partieDecimale}[\nbreDecimaleInit]% nbre de décimales initiales pour rajouter a \nbreDecimaleTotal
\setcounter{decalVirg}{0} %compteur de décalage de la virgule
\whiledo{\partieEntiere > 10}{\FPeval\partieEntiere{trunc(\partieEntiere/10,0)}\addtocounter{decalVirg}{1}}%on incrémente decalvirgul pour que la partie entiere soit <10
\FPeval\nbreDecimaleTotal{trunc(\thedecalVirg + \nbreDecimaleInit, 0)} %on compte le nombre de décimales total
\FPeval\mantis{trunc(\partiepositive / 10^\thedecalVirg, \nbreDecimaleTotal)} %on calcule la mantisse
\FPeval\puissance{trunc(\thedecalVirg, 0)} %la puissance de 10 est ici égale a \decalvirgul

\IfBeginWith{\mantis}{0}{ %cas ou la mantisse est <0; \mantis a ete calcule plus haut est égal à #1 
\StrCut{\mantis}{.}\partieEntiereMantis\partieDecimaleMantis %on sépare la mantisse autour de la virgule
partieEntiereMantis\partieEntiereMantis\\
partieDecimaleMantis\partieDecimaleMantis
\def\partiedecimale{\partieDecimaleMantis}%on conserve partieDecimaleMantis, on calcule sur partiedecimale
\whiledo{\partiedecimale > 10}{\FPeval\partiedecimale{trunc(\partiedecimale/10,0)}\addtocounter{decalVirg}{1}}
\StrLen{\partieDecimaleMantis}[\nombreZeroAvant] %nbre de chiffre avec peut etre des 0 à gauche (.00123)
\FPeval\partieDecimaleMantis{trunc(\partieDecimaleMantis/1, 0)} %on divise par 1 pour enlever les 0
\StrLen{\partieDecimaleMantis}[\nombreZeroApres] %nbre de chiffre sans 0 à gauche (.123)
\FPeval\puissance{trunc(nombreZeroApres - nombreZeroAvant -1,0)} %différence des zero enlevés moins celui de la partie entiere pour connaitre la puissance de 10
\FPeval\mantis{trunc(\partieDecimaleMantis/10^\thedecalVirg,\thedecalVirg)} %on calcule la nouvelle mantisse
\FPeval\nbreDecimaleTotal{trunc(\thedecalVirg+#7, 0)} %on calcule le nbre de décimales à partir de decalvirg
}{}
\IfStrEq{\rajoutSigneFin}{true}{\FPeval\mantis{trunc(\mantis * (-1),\nbreDecimaleTotal)}}{}
\FPeval\nbreDigit{clip(\nbreDecimaleTotal+1)}
\FPeval\puissance{trunc(\puissance + (#9),0)}
mantisse finale: \mantis\\
nbre décimales: \nbreDecimaleTotal\\
puissance de 10: \puissance\\
nbre digit: \nbreDigit\\
\FPabs{\valAbsPuissance}{\puissance}
\FPeval\valAbsPuissance{clip(\valAbsPuissance)}
\StrLen{\valAbsPuissance}[\digitPuis]
\FPeval\digitPuisTotal{trunc(\digitPuis + #8,0)}
\addtocounter{compteurPuissance}{\puissance}
\setcounter{compteurDigitPuis}{\digitPuisTotal}
\IfEq{0}{#7}{\def\leStrict{true}}{\def\leStrict{false}} %pour un codage strict ou non, dépend si on rajoute des décimales
\IfEq{false}{#2}{}{\FPeval\mantis{round(\mantis,#2)}\FPeval\nbreDigit{clip(#2+#7+1)}\FPeval\nbreDecimaleTotal{clip(#2+#7)}}
\AMCnumericChoices{\mantis}{digits=\nbreDigit,decimals=\nbreDecimaleTotal,exact=0,scoreexact=#3,approx=#4,scoreapprox=#5,sign=\AffichageSigne,strict=\leStrict,borderwidth=.2mm,%
bordercol=gray,reverse=false,strict=true,Tpoint={\Large$\prime$\vspace*{-.1em}}}%
\end{questionmultx}
 \EffacementNumeroQuestion
\begin{questionmultx}{Numeric\thecompteurQuestNumeric '}
 \IfEq{0}{#8}{\def\leStrict{true}}{\def\leStrict{false}}
 \vspace{-2ex}
	\AMCnumericChoices{\thecompteurPuissance}{digits=\thecompteurDigitPuis,strict=\leStrict,scoring=true,exact=0,scoreexact=#3,sign=true,Tsign={${\times 10}$}}
\end{questionmultx}
}%->accolade de la commande>accolade de la commande

\newcommand{\pai}{ %
   %\AMCquestionNumberfalse
  {\def\AMCbeginQuestion{\par\noindent{\bf Question bonus} \hspace{0.1mm}}
  
    \begin{question}{pai}\bareme{v=0,b=2,m=0,MAX=0}
Ici une question bonus (avec MAX=0)
%\def\AMCbeginAnswer{}\def\AMCendAnswer{\null} \def\AMCanswer##1##2{##1 ##2\hfill}
        \begin{reponsesperso}
 \mauvaise{faux1}
    \mauvaise{faux2}
    \bonne{bonne}     
   \end{reponsesperso}
    \end{question}
  }
}

    


%%%%%%%%%%%%%%%%%%%%%%%    CONFIGURATION DE AMC     %%%%%%%%%%%%%%%%%%%%%%%

%%%bareme question multiple
%\baremeDefautM{v=0, p=0,formula= .75*(NBC-.5*NMC)/NB}
%v: aucune case cochée
%e: case « aucune de ces réponses n’est correcte » cochée en même temps qu’une autre case.
%p: note plancher

%%% bareme question simple
%\baremeDefautS{b=.75, m=0, e=0, v=0}
%e: incohérence (plusieurs cases cochées)
%b: bonne
%m: mauvaise
%v: aucune réponse

%%%%%%%%%CHOIX DU MÉLANGE DES PAGES
%fixed -> aucun mélange
%cyclic -> élément pris à la suite et reprise du début
%withreplacement -> équivalent à \melangegroupe
%withoutreplacement > équivalent à \melangegroupe + cyclic reprise au début
%\setdefaultgroupmode{withreplacement}

%%%%Change Explication en réponse
\AMCtext{explain}{R\'eponse : }

%\mathcode`\.="013B %separateur décimal pour math


%pour effacer le numéro de la question
\def\EffacementNumeroQuestion{\def\AMCbeginQuestion##1##2{}\AMCquestionNumberfalse}

%modifie le titre de la question et le positionnement de la reponse par rapport aux réponses
\def\AMCbeginQuestion#1#2{\par\noindent{\textbf{Q.#1}}#2\hspace{.6ex}}

%inserer un numéro de page
\AMCsetFoot{page \thepage}

%%%%suppression du code +1/1/59
\AMCidsPosition{pos=none}

%%%%Change Explication en réponse
\AMCtext{explain}{R\'eponse : }

%Pour configurer les questions ouvertes
\AMCopenOpts{boxframerule=1pt,boxframerulecol=red,width=.95\linewidth, lineheight=0.8cm, hspace=0.1mm,boxmargin=0.1ex,Treserved=Cam, lineup=false}
\def\AMCotextReserved{\emph{Réservé}}

%%%OPTIONS DE CASES A COCHER
\AMCboxStyle{shape=square,size=1.8ex,down=.1ex,rule=.5pt,outsidesep=.1em,color=black}
% shape: forme des cases à cocher; square, oval(charger le paquet LaTeX tikz).
% width la largeur des cases ;
% height la hauteur des cases ;
% size représente la taille (à la fois width et height) de ces cases ;
% rule représente l’épaisseur du contour des cases ;
% down représente la taille du déplacement vers le bas des cases.
% outsidesep représente la distance entre la case et la lettre (ou le chiffre) quand l’option outsidebox est choisie (voir Options du paquet).
% cross=true visible uniquement sur la feuille réponse, indique par une croix la bonne réponse au lieu de colorier la case.
% crossrule=1.5 visible uniquement sur la feuille réponse, représente l’épaisse de la croix précédente.
% color= col permet d’indiquer la couleur à utiliser pour les cases à cocher.


%%%%%%%%%OPTIONS DE CHOIX NUMÉRIQUE
\AMCnumericOpts{vertical=false,borderwidth=.1mm,bordercol=gray,hspace=1ex,vspace=-1pt,backgroundcol=white,Tpoint=$\mathbf{\prime}$\vspace*{-.1em}}

% - nozero= bool avec la valeur true, enlève le choix 0 pour tous les chiffres du nombre à saisir. utile lors de la saisie de petits (<10) nombres non nuls.
% - sign= bool demande (ou non) la saisie d’un signe (la valeur par défaut est true). % - % - strict= bool avec la valeur true, une case doit être obligatoirement cochée pour le signe et pour chaque chiffre (même pour le chiffre 0). Avec la valeur false (valeur par défaut), si pour certains chiffres aucune case n’est cochée, ces chiffres seront fixés à la valeur 0.
% - vertical= bool avec la valeur true, chaque chiffre sera représenté par une colonne. Avec la valeur false (valeur par défaut),chaque chiffre sera représenté par une ligne.
% - reverse= bool avec la valeur true (valeur par défaut), en mode vertical, les grandes valeurs des chiffres seront placées en haut plutôt qu’en bas.
% - hspace= space donne l’espace horizontal entre les cases (.5em par défaut).
% - vspace= space donne l’espace vertical entre les cases (1ex par défaut).
% - borderwidth= space donne l’épaisseur du cadre qui entoure toutes les cases (1mm par défaut).
% - bordercol= color donne la couleur du cadre (lightgray par défaut).
% - backgroundcol= color donne la couleur du fond (white par défaut).
% - Tsign= text donne le texte à inscrire au-dessus des deux cases correspondant au signe (vous pouvez obtenir le même résultatgrâce à \def\AMCntextSign{ text }, le texte par défaut étant vide).
% - Tpoint= text donne le texte correspondant à la virgule (décimale). Il peut également être modifié par \def\AMCdecimalPoint{ text }, et la valeur par défaut est \raisebox{1ex}{\bf .}.

% - scoring= bool avec la valeur true (valeur par défaut), un barème sera transmis à AMC.
% - scoreexact= num donne le score à affecter à une réponse exacte (2 par défaut).
% - exact= num donne la distance maximale à la valeur correcte en-dessous de laquelle une réponse sera considérée comme exacte(et sera rétribuée de scoreexact points). La valeur par défaut est 0.
% - scoreapprox= num donne le score à affecter à une réponse approximative (1 par défaut).
% - approx= num donne la distance maximale à la valeur correcte en-dessous de laquelle une réponse sera considérée comme approximative (et sera rétribuée de scoreapprox points). La valeur par défaut est 0.


\AMCinterBquest=1.5ex%modifie l'espace entre deux questions si l'option bloc est choisie
\AMCinterIquest=1.5ex%modifie l'espace entre les questions si l'option bloc n'est pas choisie
\AMCinterBrep=.1ex%modifie l'espace entre les réponses si l'option bloc est  choisie ????
\AMCinterIrep=.1ex%modifie l'espace entre les réponses si l'option bloc n'est pas choisie

%\AMCsetScoreZone{width=4.5em,height=1.5ex,depth=.5ex,position=question}%position de la note




%%%%TOUT ce qui s'écrit ici sera placé avant la commande \sujet%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%laisser cette commande et copier la liste%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%des élèves dans le dossier du projet QCM%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%% les items doivents être séparés par une virgule%%%%%%%%%%%%
\csvreader[head to column names]{listetest.csv}{}{\sujet}

\end{document}