int main()
 {
  Testeurs ts ;
  ts.acquiere(std::make_shared<TesteurCoefs<unsigned char>>(1000,1000)) ;
  ts.acquiere(std::make_shared<TesteurSommes<unsigned char>>(1000,1000)) ;
  boucle(1,8,1,ts) ;
  std::cout<<std::endl ;
  return 0 ;
 }
void boucle( int debut, int fin, int inc, Testeurs & ts )
 {
  int nb = ts.nb_elements() ;
  for ( int i=0; i<nb ; i++ )
   {
    try
     {
      std::cout<<std::endl ;
      for ( int bits = debut ; bits <= fin ; bits = bits + inc )
       { ts.element(i)->execute(bits) ; }
     }
    catch ( Echec const & e )
     { std::cout<<"[ERREUR "<<e.code()<<" : "<<e.commentaire()<<"]"<<std::endl ; }
   }
 }
void boucle( int deb, int fin, int inc, Testeurs & ts )
 {
  for ( int i=0 ; i<ts.nb_elements() ; ++i )
   {
    std::cout<<std::endl ;
    for ( int bits = deb ; bits <= fin ; bits = bits + inc )
     { ts[i]->execute(bits) ; }
   }
 }