Programacion c++ – tercio superior del total de alumnos

Sentencia if en C++ con ejemplos
0
(0)

Arreglos en c++ ejercicios resueltos

c++ – tercio superior

Usando Struct, hacer un programa que permita ingresar n cantidad de alumnos, cógido,   nombre, y tres notas, Nos debe mostrar los datos del alumno de forma ordenada por su promedio y sólo mostrar el tercio superior de la cantidad de alumnos.

#include<iostream.h>
#include<conio.h>
#define lim 100
struct alumno{
               char codigo[9];
               char nombre[20];
               int nota1;
               int nota2;
               int nota3;
               };
void leer(int, struct alumno[]);
void ordenar(int , struct alumno[]);
void listado(int, struct alumno[]);

void main()
{int n;
struct alumno alu[lim];
cout<<"Cantidad de alumnos:"; cin>>n;
leer(n,alu);
ordenar(n,alu);
cout<<"Orden segun su promedio:"<<endl;
listado(n,alu);
getch();
}
void leer(int n, struct alumno x[])
{int i;
 for(i=0;i<n;i++)
 {cout<<"Codigo :"; cin>>x[i].codigo;
  cout<<"Nombre :"; cin>>x[i].nombre;
  cout<<"Nota 1 :"; cin>>x[i].nota1;
  cout<<"Nota 2:"; cin>>x[i].nota2;
  cout<<"Nota 3:"; cin>>x[i].nota3;
  }
  getch();
 }
 void ordenar( int n, struct alumno x[])
 {int i,j;
 struct alumno temp;
  for(i=1;i<n;i++)
   for(j=n-1;j>=i; j--)
   if((x[j-1].nota1+x[j-1].nota2+x[j-1].nota3)/3<(x[j].nota1+x[j].nota2+x[j].nota3)/3)
   {temp=x[j-1];
    x[j-1]=x[j];
    x[j]=temp;
    }
  }
  void listado(int n, struct alumno x[])
  {int i;
  for(i=0;i<n/3;i++)
  {cout<<x[i].codigo<<"\t";
   cout<<x[i].nombre<<"\t";
   cout<<x[i].nota1<<"\t";
   cout<<x[i].nota2<<"\t";
   cout<<x[i].nota3<<"\t";
   cout<<(x[i].nota1+x[i].nota2+x[i].nota3)/3<<endl;
   }
  }
Struct - Tercio superior
  • Se puede notar que al mostrar el orden según su promedio sólo nos muestra uno, y esto es el tercio superior
  • Al ingresar los datos, éste nos pedía cantidad de alumnos a ingresar y nosotros digitamos 3, es así si queremos encontrar el tercio superior según la nota más alta de los alumnos éste nos mostrará sólo uno. 
  • Si fuera el caso de que ingresamos en cantidad de alumnos 6, éste nos mostrará al final sólo los dos primeros alumnos con más alto promedio, que equivale al tercio superior.
  • Para encontrar el tercio superior, sólo basta con dividir la cantidad de alumnos (n) dividido entre «3».

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuarlo!

Promedio de puntuación 0 / 5. Recuento de votos: 0

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.