fork download
  1. #include <iostream>
  2. #include <limits>
  3. using namespace std;
  4.  
  5. int main() {
  6. float n;
  7. cout << "Insira um inteiro." << endl;
  8. while (true) {
  9. cin >> n;
  10. if (!cin.fail() && n == (int)n) break;
  11. cout << n << " - Entrada nao corresponde ao tipo de variavel solicitado." << endl;
  12. cin.clear();
  13. cin.ignore(numeric_limits<streamsize>::max(), '\n');
  14. }
  15. cout << endl << n << " - Entrada recebida com sucesso!!!" << endl;
  16. }
  17.  
  18. //https://pt.stackoverflow.com/q/107543/101
Success #stdin #stdout 0s 4312KB
stdin
hgdfh
123.45
2


stdout
Insira um inteiro.
0 - Entrada nao corresponde ao tipo de variavel solicitado.
123.45 - Entrada nao corresponde ao tipo de variavel solicitado.

2 - Entrada recebida com sucesso!!!