Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cctype>
- using namespace std;
- int main()
- {
- string nombre; //variable que almacenará el nombre
- bool error= true; //variable lógica para controlar el ciclo while
- bool valido; //variable lógica para señalar si el nombre incluye solo letras o espacios
- int i,espacios;
- while (error)
- {
- cout << "\n\nDigite el nombre: "; //se captura El dato nombre
- getline(cin,nombre); //getline permite capturar frases
- espacios=0; //variable para contar la cantidad de espacios que haya
- i=0;
- valido=true;
- while(nombre[i]) //validar cada uno de los caracteres
- {
- if(!isalpha(nombre[i]) && !isspace(nombre[i])) //si NO es letra y NO es espacio
- {
- valido=false;
- }
- if(isspace(nombre[i])) // si el caracter es espacio, actualiza el contador
- espacios++;
- i++;
- }
- cout << " i= " << i <<endl;
- cout << " espacios = " << espacios <<endl;
- if(!valido || espacios==i) //si es invalido o si todos los caracteres son espacios
- cout << "\nEl Dato : ["<< nombre <<"] Es invalido! Solo letras por favor";
- else
- error=false;
- }
- cout << "\nEl dato " << nombre << " SI es un nombre valido" << endl << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement