% CANSG2
\xintFor* #1 in{\xintSeq{1}{\useKV[ClesMathAlea]{NbQ}}}\do{%
  \ChoixAlea{4}{7}{\CANSGDeuxProfondeur}%a
  \ChoixAlea{3}{7}{\CANSGDeuxLargeur}%b
  \ChoixAlea{2}{7}{\CANSGDeuxHauteur}%c
  \ChoixAlea{0}{\fpeval{\CANSGDeuxProfondeur-1}}{\CANSGDeuxRetraitPro}%
  \ChoixAlea{0}{\fpeval{\CANSGDeuxLargeur-1}}{\CANSGDeuxRetraitLar}%
  \ChoixAlea{0}{\fpeval{\CANSGDeuxHauteur-1}}{\CANSGDeuxRetraitHau}%
  Un empilement de cubes est représenté ci-dessous.\par Combien de cubes contient cet empilement ?%
  \begin{center}
    \mplibforcehmode
    \begin{mplibcode}
      input mp-solid;
      
      Ferme[0]:=false;
      outcolor:=white;
      incolor:=white;
      nb:=1;subh:=1;
      creux:=true;
      
      vardef CubeManquant(expr a,b,c,d,e,f)=
      % a largeur
      % b profondeur
      % c hauteur
      % d cubes retirés sur la largeur
      % e cubes retirés sur la profondeur
      % f cubes retirés sur la hauteur
      n=1;
      for k=1 upto (a*b*c):
      Ferme[100+k]:=true;
      perso[100+k]:=false;
      endfor;
      Objetcube0("a=0.5");
      for A=0 upto 0:
      for C=0 upto (c-1):
      for B=0 upto (b-1):
      TR:=(B/2,A/2,C/2);
      ObjetDeplacement[n](0);
      AffichageObjet[n];
      n:=n+1;
      endfor;
      endfor;
      endfor;
      for A=1 upto a-d-1:
      for C=0 upto c-f-1:
      for B=0 upto b-e-1:
      TR:=(B/2,A/2,C/2);
      ObjetDeplacement[n](0);
      AffichageObjet[n];
      n:=n+1;
      endfor;
      endfor;
      endfor;  
      enddef;
      
      Initialisation(2500,60,20,25);
      CubeManquant(\CANSGDeuxProfondeur,\CANSGDeuxLargeur,\CANSGDeuxHauteur,\CANSGDeuxRetraitPro,\CANSGDeuxRetraitLar,\CANSGDeuxRetraitHau);
    \end{mplibcode}
  \end{center}
}
\ifboolKV[ClesCN]{AMC}{
  \ifboolKV[ClesCN]{Multi}{%
    \AMCnumericChoices{\fpeval{\CANSGDeuxLargeur*\CANSGDeuxHauteur+(\CANSGDeuxProfondeur-\CANSGDeuxRetraitPro-1)*(\CANSGDeuxLargeur-\CANSGDeuxRetraitLar)*(\CANSGDeuxHauteur-\CANSGDeuxRetraitHau)}}{digits=3,decimals=0,sign=false,Tpoint={,},borderwidth=0pt,backgroundcol=lightgray,scoreexact=1}
  }{}%
}{}%
