- Nombre
- Codigo
- Sexo
- Edad
- Curso
- Notas de las asignaturas del curso anterior
Aqui el codigo:
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
class estudiante
{
char nombre[25];
int codigo;
char sexo;
int edad;
char curso[25];
int notas[4]; //Suponiendo que el estudiante curso 4 materias el "semestre" anterior
public:
estudiante()
{
for(int i=0;i<25;i++)
{
nombre[i]=NULL;
curso[i]=NULL;
}
edad=0;
codigo=0;
}
void insertar(estudiante vector[10])
{
int buscar=0, edad=0, codigo, nota;
char nombre[25], sexo, curso[25];
buscar=buscar_posicion(vector);
if(buscar<99)
{
cout<<"Inserte los datos del estudiante"<<endl;
cout<<"Nombre"<<endl;
cin>>nombre;
cout<<"Edad"<<endl;
cin>>edad;
cout<<"SexO"<<endl;
cin>>sexo;
cout<<"Curso"<<endl;
cin>>curso;
cout<<"Notas del curso anterior"<<endl;
for(int i=0;i<4;i++)
{
cout<<"Inserte la nota "<<i+1<<endl;
cin>>nota;
vector[buscar].notas[i]=nota;
}
if(buscar==0)
{
vector[buscar].codigo=1;
}
else
{
vector[buscar].codigo=vector[buscar-1].codigo+1;;
}
strcpy(vector[buscar].nombre,nombre);
strcpy(vector[buscar].curso,curso);
vector[buscar].sexo=sexo;
vector[buscar].edad=edad;
}
else
{
cout<<"Registro FULL";
getch();
}
}
int buscar_posicion(estudiante *vector)
{
for(int i=0;i<10;i++)
{
if(vector[i].codigo==0)
{
return i;
}
else if(i==10)
{
return 99;
}
}
}
void mostrar(estudiante* vector)
{
for(int i=0;i<10;i++)
{
if(vector[i].edad>0)
{
cout<<endl;
cout<<"Codigo: "<<vector[i].codigo<<endl;
cout<<vector[i].nombre<<endl;
cout<<vector[i].edad<<endl;
cout<<vector[i].curso<<endl;
cout<<vector[i].sexo<<endl;
cout<<"Notas:";
for(int j=0;j<4;j++)
{
cout<<" "<<vector[i].notas[j]<<" ";
}
}
}
getch();
}
estudiante buscar(int codigo);
void ordenar_alfabetico(estudiante vector[10])
{//ordenamiento de mayor a menor
char aux[25];
int temp=0;
for(int i=0; i<9; i++)
{
for(int j=i+1; j<10; j++)
{
temp=strcmp(vector[i].nombre, vector[j].nombre);
if (temp<0)
{
strcpy(aux, vector[i].nombre);
strcpy(vector[i].nombre,vector[j].nombre);
strcpy(vector[j].nombre, aux);
}
}
}
}
void calcular_media(estudiante* vector)
{
int acumulador=0;
for(int i=0; i<10; i++)
{
if(vector[i].codigo>0)
{
for(int j=0; j<4; j++)
{
acumulador=acumulador+vector[i].notas[j];
}
cout<<"Nombre: "<<vector[i].nombre<<" Promedio: "<<acumulador/4<<endl;
}
}
getch();
}
void ordenar_curso();
};
int main()
{
int num=0, resp=0;
estudiante vector[10],a;
do
{
system("cls");
cout<<"\n\n 1. Insertar Estudiantes.. \n";
cout<<" 2. Mostrar Estudiantes.. \n";
cout<<" 3. Ordenar Alfabeticamente.. \n";
cout<<" 4. Calcular Medias.. \n";
cout<<"\n\n -1 para salir \n";
//num=resp=0;
cin>>resp;
switch(resp)
{
case 1: a.insertar(vector);
break;
case 2: a.mostrar(vector);
break;
case 3: a.ordenar_alfabetico(vector);
break;
case 4: a.calcular_media(vector);
break;
}
}while(resp!=-1);
return 0;
}
0 comentarios:
Publicar un comentario