ClavierInt.cpp
#include <iostream.h>
//---------------------------------------------------------------------------
bool chaineInt(const char *chaine, int &entier)
{
  bool correcte=true, negatif=false;
  entier=0;
  for (int i=0; chaine[i]; i++) {
    entier *= 10;
    if (chaine[i]<'0' || chaine[i]>'9')
      if (chaine[i]=='-') { negatif=true; continue; }
      else { correcte=false; break; }
    entier += chaine[i]-0x30;
  }
  if (negatif) entier = -entier;
  return correcte;
}
//---------------------------------------------------------------------------
int clavierInt(const char *message)
{
  char chaine[100];
  int entier;
  bool correcte;
  do {
    cout << message;
    cin >> chaine;
    correcte = chaineInt(chaine, entier);
    if (!correcte) cout << "Mauvaise valeur!!!" << endl;
  }
  while (!correcte);
  return entier;
}
//---------------------------------------------------------------------------
int main()
{
  int entier = clavierInt("Introduisez votre valeur : ");
  cout << "Valeur entiere : " << entier << endl;
  cin.get();
  cin.get();
  return 0;
}
//---------------------------------------------------------------------------
ClavierInt.cpp