Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Ejercicio ingenieros
1. UNIVERSIDAD FERMÍN TORO
VICE-RECTORADO ACADÉMICO
FACULTAD DE INGENIERÍA
ESCUELA DE MANTENIMIENTO MECANICO
Ejercicios computación para
ingenieros
Raul lopez
c.i 22960321
2. #include <stdio.h>
#include <stdlib.h>
//esta libreria es necesaria para poder imprimir los nombres de los profesores
#include <string.h>
//el ejercicio indica que el personal ya tiene los vectores, por ello hay que crearlos con datos
int edad[]={50,35,46,77,24};
//esta fue la mejor manera que encontre para imprimir el vector con nombres, pero sigue sin ser óptima
char *nombre[100];
char* nombre0= "Luis Morillo";
char* nombre1= "Eglis Perez";
char* nombre2= "Luisa Castillo";
char* nombre3= "Rosa Palma";
char* nombre4= "Jose Rodriguez";
//1 masculino, 2 femenino (es mas sencillo trabajar con numeros)
int sexo[]={1,2,2,2,1};
int edadpromedio(int edad[])
{
int i=0;
int suma=0;
int promedio=0;
for (i=0; i<5; i++)
{
suma = suma + edad[i];
}
//dividido entre 5 porque nada mas ubique 5 profesores en el vector inicial
promedio = suma / 5;
return promedio;
}
//profesor mas joven del grupo
void profjoven(int edad[5], char nombre[])
3. int i=0;
//la menor edad debe tener un numero muy alto para poder ejercer la primera comparacion
//solo se comparan vectores
int menoredad[0]={100};
//posicion se encargara de determinar el punto donde se encuentra la menor edad
int posicion;
//el ciclo es para 5 profesores
for (i=0; i<5; i++)
{
if (menoredad[i]> edad[i])
{
menoredad[i] = edad[i];
posicion = i;
}
}
//hace un llamado al vector donde se encuentra el nombre del profesor en dicha posicion
switch (posicion)
{
//para imprimir nombres se utiliza %s y no %c a pesar de ser un char
//el %c no imprime la cadena completa del vector, en cambio el %s si lo hace
case 0 : {printf("nEl profesor mas joven es: %sn",nombre0);
break;}
case 1 : {printf("nEl profesor mas joven es: %sn",nombre1);
break;}
case 2 : {printf("nEl profesor mas joven es: %sn",nombre2);
break;}
case 3 : {printf("nEl profesor mas joven es: %sn",nombre3);
break;}
case 4 : {printf("nEl profesor mas joven es: %sn",nombre4);
break;}
}
}
//profesora con edad mayor al promedio
4. void profmayorprom(char nombre[], int sexo[])
{
edadpromedio(edad[5]);
int i=0;
int j=0;
int posicion;
//vector que sirve para ejercer las comparaciones
int femenino[5] = {2,2,2,2,2};
//como ya había corrido el programa sabía que ese era el valor promedio
//lo ideal es usar edadpromedio para llenar el vector
int promedio[5] = {46,46,46,46,46};
printf("nLas profesoras con edad mayor al promedio son: n");
do {
for (i=0; i<5; i++)
for (j=0; j<5; j++)
{
//determina que la edad sea mayor al promedio
if (edad[j] > promedio[j])
{
posicion = j;
}
}
//ubica los nombres de las profesoras con edad mayor al promedio
switch (posicion)
{
case 0 : {printf("n%sn",nombre0);
break;}
case 1 : {printf("n%sn",nombre1);
break;}
case 2 : {printf("n%sn",nombre2);
break;}
case 3 : {printf("n%sn",nombre3);
break;}
case 4 : {printf("n%sn",nombre4);
break;}
}
} while (sexo[i] == femenino[i]); //mientras sean profesoras
}
5. //profesores con edad menor al promedio
void profmenorprom(char nombre[], int sexo[])
{
edadpromedio(edad[5]);
int i=0;
int j=0;
int posicion;
//vector para profesores (hombres)
int masculino[5]={1,1,1,1,1};
//promedio de las edades (dado previamente por el programa)
int promedio[5]={46,46,46,46,46};
printf("nLos profesores con edad menor al promedio son: n");
do {
for (i=0; i<5; i++)
for (j=0; j<5; j++)
{
//compara la menor edad en relacion a la edad promedio
if (edad[j] < promedio[j])
{
posicion = j;
}
}
//determina el nombre del profesor con menor edad en relacion al promedio
switch (posicion)
{
case 0 : {printf("n%sn",nombre0);
break;}
case 1 : {printf("n%sn",nombre1);
break;}
case 2 : {printf("n%sn",nombre2);
break;}
case 3 : {printf("n%sn",nombre3);
break;}
case 4 : {printf("n%sn",nombre4);
break;}
}
}while (sexo[i] == masculino[i]); //mientras sea hombre el profesor
6. //parte principal del programa, solo llamara los metodos en el orden pre establecido
int main(int argc, char** argv) {
edadpromedio(edad);
//como el metodo edadpromedio estaba pensado para ser usado como una variable entera
//se procedio a imprimir en el principal y no desde su mismo metodo para evitar errores
printf("nEdad Promedio del grupo de profesores: %dn",edadpromedio(edad));
profjoven(edad,nombre);
profmayorprom(nombre,sexo);
profmenorprom(nombre,sexo);
//pausa la pantalla para ver los resultados
system("pause");
return (EXIT_SUCCESS);
}