16/11/2022 ; 5:28 PM
This commit is contained in:
@@ -0,0 +1,107 @@
|
||||
#include <stdio.h>
|
||||
|
||||
/* Universidad.
|
||||
El programa, al recibir información sobre el número de alumnos que han ingresado
|
||||
➥a sus ocho diferentes carreras en los dos semestres lectivos de los últimos
|
||||
➥cinco años, obtiene información útil para el departamento de escolar. */
|
||||
|
||||
#define F 8
|
||||
#define C 2
|
||||
#define P 5
|
||||
/* Se declaran constantes para la fila, la columna y la profundidad. */
|
||||
|
||||
void Lectura(int[][C][P], int, int, int);
|
||||
void Funcion1(int[][C][P], int, int, int);
|
||||
void Funcion2(int[][C][P], int, int, int);
|
||||
void Funcion3(int[][C][P], int, int, int);
|
||||
/* Prototipo de funciones. Cada prototipo de función corresponde a uno de los
|
||||
➥incisos. */
|
||||
|
||||
void main(void)
|
||||
{
|
||||
int UNI[F][C][P];
|
||||
Lectura(UNI, F, C, P);
|
||||
Funcion1(UNI, F, C, P);
|
||||
Funcion2(UNI, F, C, P);
|
||||
Funcion3(UNI, 6, C, P);
|
||||
/* Se coloca el 6 como parámetro ya que es la clave de la Ingeniería en
|
||||
➥Computación. */
|
||||
}
|
||||
|
||||
void Lectura(int A[][C][P], int FI, int CO, int PR)
|
||||
/* La función Lectura se utiliza para leer un arreglo tridimensional de tipo
|
||||
➥entero de FI filas, CO columnas y PR profundidad. Observa que al ser
|
||||
➥tridimensional se necesitan tres ciclos para recorrer el arreglo. */
|
||||
{
|
||||
int K, I, J;
|
||||
for (K = 0; K < PR; K++)
|
||||
for (I = 0; I < FI; I++)
|
||||
for (J = 0; J < CO; J++)
|
||||
{
|
||||
printf("Año: %d\tCarrera: %d\tSemestre: %d" , K + 1, I + 1, J + 1);
|
||||
scanf("%d", &A[I][J][K]);
|
||||
}
|
||||
}
|
||||
|
||||
void Funcion1(int A[][C][P], int FI, int CO, int PR)
|
||||
/* Esta función se utiliza para determinar el año en el que ingresó el mayor
|
||||
➥número de alumnos a la universidad. Observa que el primer ciclo externo
|
||||
➥corresponde a los años. */
|
||||
{
|
||||
int K, I, J, MAY = 0, AO = -1, SUM;
|
||||
for (K = 0; K < PR; K++)
|
||||
/* Por cada año se suma el ingreso de los dos semestres de las ocho carreras.
|
||||
*/
|
||||
{
|
||||
SUM = 0;
|
||||
for (I = 0; I < FI; I++)
|
||||
for (J = 0; J < CO; J++)
|
||||
SUM += A[I][J][K];
|
||||
if (SUM > MAY)
|
||||
{
|
||||
MAY = SUM;
|
||||
AO = K;
|
||||
}
|
||||
}
|
||||
printf("\n\nAño con mayor ingreso de alumnos: %d Alumnos: %d", AO + 1, MAY);
|
||||
}
|
||||
|
||||
void Funcion2(int A[][C][P], int FI, int CO, int PR)
|
||||
/* Esta función se utiliza para determinar la carrera que recibió el mayor
|
||||
➥número de alumnos el último año. Observa que no se utiliza un ciclo para los
|
||||
➥planos de la profundidad, ya que es un dato (PR). */
|
||||
{
|
||||
int I, J, MAY = 0, CAR = -1, SUM;
|
||||
for (I = 0; I < FI; I++)
|
||||
{
|
||||
SUM = 0;
|
||||
for (J = 0; J < CO; J++)
|
||||
SUM += A[I][J][PR - 1];
|
||||
if (SUM > MAY)
|
||||
{
|
||||
MAY = SUM;
|
||||
CAR = I;
|
||||
}
|
||||
}
|
||||
printf("\n\nCarrera con mayor numero de alumnos: %d Alumnos: %d", CAR + 1, MAY);
|
||||
}
|
||||
|
||||
void Funcion3(int A[][C][P], int FI, int CO, int PR)
|
||||
/* Esta función se utiliza para determinar el año en el que la carrera
|
||||
➥Ingeniería en Computación recibió el mayor número de alumnos. Observa que no
|
||||
➥se utiliza un ciclo para trabajar con las filas, ya que es un dato (FI). */
|
||||
{
|
||||
int K, J, MAY = 0, AO = -1, SUM;
|
||||
for (K = 0; K < PR; K++)
|
||||
{
|
||||
SUM = 0;
|
||||
for (J = 0; J < CO; J++)
|
||||
SUM += A[FI - 1][J][K];
|
||||
if (SUM > MAY)
|
||||
{
|
||||
MAY = SUM;
|
||||
AO = K;
|
||||
}
|
||||
}
|
||||
printf("\n\nAño con mayor ingreso de alumnos: %d Alumnos: %d", AO + 1, MAY);
|
||||
}
|
||||
Reference in New Issue
Block a user