Código
#include <iostream> #include <cstdlib> #include <cstdio> #include <cstring> using namespace std; void registrarDatos(); //Funcion para registrar los datos void mostrarDatos(); //Funcion para mostrar los datos void estudiantesPerdieron(); //Funcion para mostrar los estudiantes que perdieron el curso void promedioNotas(); //Funcion para imprimir el articuo de mayor valor y su valor int opcion, i, j, n; //Declaracion de variables string *a=NULL; float *b=NULL; float *auxiliarPerdieron=NULL; int numeroPerdieron; int main() { system("color 3f"); //Asignación color de fondo system("CLS"); //Limpiar pantalla do //realizar mientras sea diferente de 6 { system("CLS"); cout<<"Programa que permite registrar N numero de estudiantes"<<endl; cout<<"con su respectiva nota final, listar los que perdieron"<<endl; cout<<"y sacar el promedio"<<endl<<endl; cout<<endl<<"OPCIONES"<<endl; //Opciones cout<<"1. REGISTRAR DATOS"<<endl; cout<<"2. LISTAR DATOS"<<endl; cout<<"3. LISTA DE ESTUDIANTES QUE PERDIERON EL CURSO"<<endl; cout<<"4. PROMEDIO DE NOTAS DEL CURSO"<<endl; cout<<"5. SALIR DEL PROGRAMA"<<endl<<endl; cout<<"Digite la opcion "; cin >>opcion; while(opcion>=6) //Ciclo while opciones incorrectas { cout<<"INGRESE UN NUMERO VALIDO POR FAVOR "; cin>>opcion; } switch(opcion) //llamadas a funciones { case 1: system("cls"); //Limpiar pantalla registrarDatos(); //llamada a funcion registrar datos break; case 2: system("cls"); //Limpiar pantalla mostrarDatos(); //llamada a funcion mostrar datos break; case 3: system("cls"); //Limpiar pantalla estudiantesPerdieron(); //llamada a funcion estudiantes perdieron break; case 4: system("cls"); //Limpiar pantalla promedioNotas(); //llamada a funcion promedio de notas break; case 5: delete [] a; system("cls"); exit(0); break; } cout<<endl; system("pause"); } while(opcion!=5); } void registrarDatos() { cout << "Por favor ingrese la cantidad de estudiantes a registrar: "<<endl; cin>>n; a = new string[n]; b = new float[n]; for(i = 0; i < n; i++) { cout <<endl<<"******* Estudiante " << i + 1 << "********:"<<endl; cout << "Nombre: "; fflush(stdin); getline (cin, a[i]); cout << "Nota final: "; cin>>b[i]; } } void mostrarDatos () { cout << "La informacion de los estudiantes registrados son los siguientes:"<<endl; for(i = 0; i < n; i++) { cout << "\n******* Estudiante " << i + 1 << "********:\n"; cout << "Nombre:" <<a[i]<<endl; cout << "Nota final: " <<b[i]<<endl; } } void estudiantesPerdieron () { cout << "La informacion de los estudiantes que perdieron la materia son los siguientes:"<<endl; cout << "Los estudiantes registrados son: "<<n<<" "; auxiliarPerdieron = new float[n]; numeroPerdieron=0; for(i = 0; i < n; i++) { if (b[i]<3) { auxiliarPerdieron[numeroPerdieron]=b[i]; numeroPerdieron++; } } cout<<"perdieron "<<numeroPerdieron<<" estudiantes" <<endl; for (i=0; i<numeroPerdieron; i++) { for (j=0; j<n; j++) { if (auxiliarPerdieron[i]==b[j]) { cout<<"Nombre "<<a[j]<<" Nota "<<b[j]<<" "<<endl; } } } } void promedioNotas() { cout << "En construccion:"<<endl; }