Advertisement
Guest User

Untitled

a guest
Mar 18th, 2019
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.43 KB | None | 0 0
  1. #include <iostream>
  2. #include <cctype>
  3.  
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8.     string nombre;       //variable que almacenará el nombre
  9.     bool error= true;    //variable lógica para controlar el ciclo while
  10.     bool valido;         //variable lógica para señalar si el nombre
  11.                          //incluye solo letras o espacios
  12.     int i,espacios;
  13.  
  14.  
  15.     while (error)
  16.     {
  17.         cout << "\n\nDigite el nombre: ";    //se captura El dato nombre
  18.         getline(cin,nombre);               //getline permite capturar frases
  19.  
  20.         espacios=0;   //variable para contar la cantidad de espacios que haya
  21.         i=0;
  22.         valido=true;
  23.         while(nombre[i])  //validar cada uno de los caracteres
  24.         {
  25.           if(!isalpha(nombre[i]) && !isspace(nombre[i])) //si NO es letra y NO es espacio
  26.           {
  27.              valido=false;
  28.           }
  29.  
  30.           if(isspace(nombre[i]))   // si el caracter es espacio, actualiza el contador
  31.              espacios++;
  32.           i++;
  33.         }
  34.  
  35.         cout << " i= " << i <<endl;
  36.         cout << " espacios = " << espacios <<endl;
  37.  
  38.         if(!valido || espacios==i)  //si es invalido  o si todos los caracteres son espacios
  39.  
  40.             cout << "\nEl Dato : ["<< nombre <<"] Es invalido! Solo letras por favor";
  41.         else
  42.             error=false;
  43.  
  44.     }
  45.     cout << "\nEl dato " << nombre << " SI es un nombre valido" << endl << endl;
  46.  
  47.     return 0;
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement