Programacion: Struct de arreglos – Promedio mayor y menor

,

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

  1. Estructura Alumno: Contiene el nombre, un arreglo de calificaciones y el promedio del alumno.
  2. Entrada de datos: Solicita al usuario que ingrese el nombre y las calificaciones de cada alumno.
  3. Cálculo del promedio: Usa una función para sumar las calificaciones y dividirlas por el total.
  4. Detección de promedios mayor y menor: Compara los promedios de los alumnos para encontrar el índice del mayor y menor.
  5. 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: TiktokFacebookYoutube