Arreglos – mostrar promedio mayor
Hacer un programa que permita ingresar código, nombre y promedio final del alumno y que imprima alumnos que tengan promedio mayor a 11 y promedios que están entre 5 y 11.
Aquí tienes un ejemplo de un programa en C++ que utiliza una estructura (struct
) para manejar la información de los alumnos, incluidos sus nombres y calificaciones. El programa calcula y muestra el promedio mayor y menor de los alumnos.
El programa usado para esta codificación es: BORLAND C++
#include<iostream.h>
#include<conio.h>
#include<string.h>
#define MAX 50
struct alumno{
char codigo [9];
char nombre [MAX];
int notaprom;
};
void LeeAlumnos(int, struct alumno[]);
//void ordenaAlfa(int, struct alumnos[]);
void prommay11(int, struct alumno[]);
void promentre5y11(int, struct alumno[]);
//void listado(int, struct alumno[]);
void main()
{int n;
struct alumno alum[MAX];
cout<<"Ingrese el límite del arreglo:"; cin>>n;
LeeAlumnos(n,alum);
cout<<"Los alumnos que tienen promedio > que 11 son:"<<endl;
prommay11(n,alum);
cout<<"Los alumnos que tienen promedio entre 5 y 11 son:"<<endl;
promentre5y11(n,alum);
getch();
}
//implementación de procedimientos
void alumnos(int n, struct alumno a[])
{for(int i=0;i<n;i++)
{cout<<"codigo:["<<(i+1)<<"]"; cin>>a[i].codigo;
cout<<"nombre:["<<(i+1)<<"]"; cin>>a[i].nombre;
cout<<"promedio:["<<(i+1)<<"]"; cin>>a[i].notaprom;
}
}
void prommay11(int n, struct alumno a[])
{for(int i=0;i<n;i++)
{ if(a[i].notaprom>11)
cout<<a[i].codigo<<"t"<<a[i].nombre<<"t"<<a[i].notaprom<<endl;
}
}
void promentre5y11(int n, struct alumno a[])
{for(int i=0;i<n;i++)
{if(a[i].notaprom>=5 && a[i].notaprom<=11)
cout<<a[i].codigo<<"t"<<a[i].nombre<<"t"<<a[i].notaprom<<endl;
}
}
Esta codificación lo puedes usar en entornos como: Code::Blocks, Dev-C++, Visual Studio
#include <iostream>
#include <string>
using namespace std;
// Estructura para almacenar los datos de un alumno
struct Alumno {
string nombre;
float calificaciones[5]; // Hasta 5 calificaciones
float promedio;
};
// Función para calcular el promedio de un alumno
float calcularPromedio(float calificaciones[], int cantidad) {
float suma = 0;
for (int i = 0; i < cantidad; i++) {
suma += calificaciones[i];
}
return suma / cantidad;
}
int main() {
int cantidadAlumnos;
cout << "Ingrese la cantidad de alumnos: ";
cin >> cantidadAlumnos;
Alumno alumnos[cantidadAlumnos];
// Lectura de datos
for (int i = 0; i < cantidadAlumnos; i++) {
cout << "\nAlumno " << i + 1 << ":\n";
cout << "Nombre: ";
cin.ignore();
getline(cin, alumnos[i].nombre);
cout << "Ingrese 5 calificaciones:\n";
for (int j = 0; j < 5; j++) {
cout << "Calificación " << j + 1 << ": ";
cin >> alumnos[i].calificaciones[j];
}
alumnos[i].promedio = calcularPromedio(alumnos[i].calificaciones, 5);
}
// Buscar los promedios mayor y menor
int indiceMayor = 0, indiceMenor = 0;
for (int i = 1; i < cantidadAlumnos; i++) {
if (alumnos[i].promedio > alumnos[indiceMayor].promedio) {
indiceMayor = i;
}
if (alumnos[i].promedio < alumnos[indiceMenor].promedio) {
indiceMenor = i;
}
}
// Mostrar resultados
cout << "\nResultados:\n";
cout << "Alumno con el promedio mayor: " << alumnos[indiceMayor].nombre
<< " - Promedio: " << alumnos[indiceMayor].promedio << endl;
cout << "Alumno con el promedio menor: " << alumnos[indiceMenor].nombre
<< " - Promedio: " << alumnos[indiceMenor].promedio << endl;
return 0;
}
Explicación sobre el ejercicio: Arreglos – mostrar promedio mayor
- Estructura
Alumno
: Contiene el nombre, un arreglo de calificaciones y el promedio del alumno. - Entrada de datos: Solicita al usuario que ingrese el nombre y las calificaciones de cada alumno.
- Cálculo del promedio: Usa una función para sumar las calificaciones y dividirlas por el total.
- Detección de promedios mayor y menor: Compara los promedios de los alumnos para encontrar el índice del mayor y menor.
- Salida de datos: Muestra los nombres y promedios de los alumnos con el promedio mayor y menor.
Puedes ajustar el número de calificaciones y otros detalles según tus necesidades. Espero que este ejercicio de Arreglos – mostrar promedio mayor te haya sido muy útil.
También te puede interesar: Menú, que permita ingresar n cantidad de personas a registrar, y nos muestre todos los que son varones, sólo mujeres y sólo mayores de edad
Te invito a seguirme en mis redes sociales y compartir este ejercicio: Tiktok – Facebook – Youtube