Generation

generate functionTue, 29 Apr 2025

Elabora un programa que lea mandé un mensaje con todas las materias que cursas en el semestre (módulo, cultura digital, comunicación, matemáticas, sociales, inglés, energía con la materia, tutoría y solicite seleccionar una materia para darles 4 libros importantes de esa materia

Aquí te presento un ejemplo de programa en C++ que realiza lo que solicitas: ```cpp #include <iostream> #include <vector> #include <string> // Estructura para representar una materia struct Materia { std::string nombre; std::vector<std::string> libros; }; // Función para agregar una materia void agregarMateria(std::vector<Materia>& materias) { Materia materia; std::cout << "Ingrese el nombre de la materia: "; std::cin >> materia.nombre; std::cout << "Ingrese los 4 libros importantes de la materia (separados por comas): "; std::string libros; std::cin.ignore(); // Ignorar el salto de línea std::getline(std::cin, libros); size_t pos = 0; while ((pos = libros.find(',')) != std::string::npos) { materia.libros.push_back(libros.substr(0, pos)); libros.erase(0, pos + 1); } materias.push_back(materia); } // Función para mostrar las materias void mostrarMaterias(const std::vector<Materia>& materias) { std::cout << "Materias del semestre:" << std::endl; for (size_t i = 0; i < materias.size(); ++i) { std::cout << (i + 1) << ". " << materias[i].nombre << std::endl; } } // Función para seleccionar una materia Materia seleccionarMateria(const std::vector<Materia>& materias) { int opcion; std::cout << "Seleccione una materia del semestre:" << std::endl; mostrarMaterias(materias); std::cout << "Opción: "; std::cin >> opcion; if (opcion >= 1 && opcion <= materias.size()) { return materias[opcion - 1]; } else { std::cerr << "Opción inválida" << std::endl; return Materia(); // Devolver una materia vacía } } int main() { std::vector<Materia> materias; agregarMateria(materias); agregarMateria(materias); agregarMateria(materias); agregarMateria(materias); agregarMateria(materias); Materia materiaSeleccionada = seleccionarMateria(materias); if (!materiaSeleccionada.nombre.empty()) { std::cout << "Libros importantes de la materia '" << materiaSeleccionada.nombre << "':" << std::endl; for (const auto& libro : materiaSeleccionada.libros) { std::cout << libro << std::endl; } } return 0; } ``` Este programa define una estructura `Materia` para representar una materia con su nombre y una lista de libros importantes. La función `agregarMateria` permite agregar una materia al vector de materias, mientras que la función `mostrarMaterias` muestra las materias del semestre. La función `seleccionarMateria` permite seleccionar una materia del semestre y devuelve la materia seleccionada. En el `main`, se agregan 4 materias al vector de materias y luego se selecciona una materia del semestre. Si la materia seleccionada no está vacía, se muestran los libros importantes de la materia seleccionada. Recuerda que este es solo un ejemplo y puedes personalizarlo según tus necesidades.

Want to kickstart your project?Use the new AI Studio to create your code