Hacer programa en c++ que declare una matriz estática de 20 filas y 5 columnas, las filas representan estudiantes y las columnas las asignaturas cursadas, el programa debe aceptar las calificaciones de cada estudiante, la salida debe mostrar:
a. La calificación promedio por estudiante.
b. La calificación promedio por asignatura
c. La calificación más alta y baja por asignatura
NECESITO AYUDA URGENTE CON ESTO, POR FAVOR
Respuestas
El programa en c++ que utiliza una matriz de 20 x 5 para almacenar y luego analizar las notas de los estudiantes es:
#include<iostream>
using namespace std;
#define SIN_TIPO string
int main() {
float alta;
float baja;
float cant;
int i;
int j;
float matriz[3][5];
SIN_TIPO nota;
float promedio;
float suma;
// cantidad de estudiantes
cant = 3;
// ingreso
for (i=1;i<=cant;i++) {
cout << "Ingrese las notas del alumno " << i << endl;
for (j=1;j<=5;j++) {
cout << "Ingrese nota de la aisgnatura " << j << " : ";
cin >> nota;
matriz[i-1][j-1] = nota;
}
}
// promedio por estudiante
cout << "Promedio x Estudiante" << endl;
for (i=1;i<=cant;i++) {
suma = 0;
for (j=1;j<=5;j++) {
suma = suma+matriz[i-1][j-1];
}
promedio = suma/5;
cout << "Promedio del estudiante" << i << " : " << promedio << endl;
}
// promedio por asignatura y calificacion mas alta y baja
cout << "Promedio x Asignatura" << endl;
for (j=1;j<=5;j++) {
// inicializamos variables
suma = 0;
alta = -2000;
baja = 2000;
for (i=1;i<=cant;i++) {
suma = suma+matriz[i-1][j-1];
if (matriz[i-1][j-1]>alta) {
alta = matriz[i-1][j-1];
}
if (matriz[i-1][j-1]<baja) {
baja = matriz[i-1][j-1];
}
}
promedio = suma/cant;
cout << "Promedio de la asignatura" << j << " : " << promedio << endl;
cout << "Calificacion mas alta: " << alta << endl;
cout << "Calificacion mas baja: " << baja << endl;
}
return 0;
}
En imagen adjunta te dejo el algoritmo en diagrama de flujo hecho en PSeint
El programa esta debidamente comentado. En el primero par de bucles anidados ingresamos las notas en la matriz
En el siguiente calculamos el promedio por cada estudiante.
Finalmente, en el tercero, hallamos el promedio por asignatura y la nota más alta y la nota más baja, usando estructuras condicionales.