Un programa que me dé de alta a un estudiante Se usará (nombre, teléfono, mail, N° de reo y nickname) Que tienen que estar ingresar ser con consola) -el correo tiene que estar con @ y .com -se debe de usar strings -el número de reo solo tiene que tener números -el nombre no debe de tener números -sin regex patron Que sea facil de armar
Aquí te dejo un ejemplo de cómo podrías implementar un programa en C++ que cumpla con tus requisitos: ```cpp #include <iostream> #include <string> class Estudiante { private: std::string nombre; std::string telefono; std::string mail; std::string numeroReo; std::string nickname; public: void setNombre(const std::string& nombre) { for (char c : nombre) { if (!std::isalpha(c)) { std::cout << "El nombre no puede contener números. Por favor, ingrese un nombre válido." << std::endl; return; } } this->nombre = nombre; } void setTelefono(const std::string& telefono) { for (char c : telefono) { if (!std::isdigit(c)) { std::cout << "El teléfono debe contener solo números. Por favor, ingrese un teléfono válido." << std::endl; return; } } this->telefono = telefono; } void setMail(const std::string& mail) { size_t posAt = mail.find('@'); size_t posDot = mail.find('.'); if (posAt == std::string::npos || posDot == std::string::npos) { std::cout << "El correo electrónico debe contener '@' y '.'. Por favor, ingrese un correo electrónico válido." << std::endl; return; } if (mail.find(".com") == std::string::npos) { std::cout << "El correo electrónico debe terminar en '.com'. Por favor, ingrese un correo electrónico válido." << std::endl; return; } this->mail = mail; } void setNumeroReo(const std::string& numeroReo) { for (char c : numeroReo) { if (!std::isdigit(c)) { std::cout << "El número de reo debe contener solo números. Por favor, ingrese un número de reo válido." << std::endl; return; } } this->numeroReo = numeroReo; } void setNickname(const std::string& nickname) { this->nickname = nickname; } void darDeAlta() { std::cout << "Nombre: " << nombre << std::endl; std::cout << "Teléfono: " << telefono << std::endl; std::cout << "Correo electrónico: " << mail << std::endl; std::cout << "Número de reo: " << numeroReo << std::endl; std::cout << "Nickname: " << nickname << std::endl; } }; int main() { Estudiante estudiante; std::cout << "Ingrese el nombre del estudiante: "; std::string nombre; std::getline(std::cin, nombre); estudiante.setNombre(nombre); std::cout << "Ingrese el teléfono del estudiante: "; std::string telefono; std::getline(std::cin, telefono); estudiante.setTelefono(telefono); std::cout << "Ingrese el correo electrónico del estudiante: "; std::string mail; std::getline(std::cin, mail); estudiante.setMail(mail); std::cout << "Ingrese el número de reo del estudiante: "; std::string numeroReo; std::getline(std::cin, numeroReo); estudiante.setNumeroReo(numeroReo); std::cout << "Ingrese el nickname del estudiante: "; std::string nickname; std::getline(std::cin, nickname); estudiante.setNickname(nickname); estudiante.darDeAlta(); return 0; } ``` Este programa define una clase `Estudiante` con métodos para establecer los atributos del estudiante y un método `darDeAlta` para mostrar los datos del estudiante. En el `main`, se crea un objeto `Estudiante` y se solicita al usuario que ingrese los datos del estudiante. Luego, se llama al método `darDeAlta` para mostrar los datos del estudiante. Recuerda que este programa no utiliza expresiones regulares para validar los datos, sino que utiliza bucles para verificar que los datos cumplan con las condiciones establecidas.