Programacion c++ – tercio superior del total de alumnos


  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».

Tecpro Digital

En este Blog encontrarás recursos digitales para el aprendizaje, recursos educativos digitales, recursos digitales interactivos para descargar gratis y editarlos en programas de Ms Office como Word, Excel y PowerPoint. También encontrarás ejercicios de programación desarrollados en Borland C++ y Java Netbeans.