Advertisement
Guest User

Untitled

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