Está en la página 1de 6

FACULTAD DE INGENIERIA MECANICA Semestre 2020-I

DACIBHCC

UNIVERSIDAD NACIONAL DE INGENIERIA


EXAMEN SUSTITUTORIO
PROGRAMACION ORIENTADA A OBJETOS
MB545

Tiempo: 120 min.


Fecha 10 de octubre del 2020
 Se monitoreará al alumno, y deberá compartir su pantalla cuando se le requiera
 Las soluciones son parecidas o iguales a uno o más alumnos se les calificará con A0 a
todos ellos.
 Todas las preguntas deberán tener la evidencia de la corrida, de lo contrario, se le bajara
hasta 3 puntos sino presenta esta evidencia.
 Las soluciones de todas las preguntas deben ser reportadas en un solo archivo en Word
con su evidencia de la corrida con el pantallazo de la solución de la pregunta 4. Los
programas que es con visual, solo copiar el código agregado. Pasar a pdf y subirlo al aula
virtual
 Para las soluciones de todas las preguntas les quitaran el SQL, DEBUG y el Otro Debug que
se encuentra dentro de carpeta que tiene el nombre del problema, se debe comprimir y
enviar al aula virtual.
Los 30 minutos adicionales es para que el alumno pueda subir las soluciones al aula virtual

**************************************************************************
1. En una empresa están realizando un sistema para evaluar la vulnerabilidad de sus
trabajadores al Covid-19 siguiendo los protocolos del Ministerio de Salud; para lo cual
se requiere una estadística de los trabajadores en función a su índice de masa corporal
(IMC) el cual se calcula en el sistema métrico como el peso del trabajador (kilos) divido
por la altura (metros) al cuadrado.
Se pide mostrar la clasificación (IMC y su descripción de IMC) de un trabajador de
acuerdo con la siguiente tabla:
Desnutrición: < 18.5
Bajo Peso : >= 18.5 y <= 22.0
Peso Normal: > 22.0 y < 25.0
Sobrepeso : >= 25.0 y <= 30.0
Obesidad : > 30.0
Se deberá ingresar por teclado el peso (kilogramos) y talla (metros) del trabajador.
Use funciones y/o procedimientos para los cálculos e impresión de los resultados.

Nota: Debe usar el siguiente “programa principal”:

int main() // O void main(){… system(“pause”);}


{
char op; // S/N
float v_peso; // Peso del trabajador
float v_talla; // Talla del trabajador
float v_imc; // Indice de Masa Corporal
int v_ctg; // Categoria del trabajador
do {
system("CLS");
f_lectura(v_peso, v_talla);
v_imc = f_calcula_imc(v_peso, v_talla);

Los profesores del curso Página 1 de 6


FACULTAD DE INGENIERIA MECANICA Semestre 2020-I
DACIBHCC

v_ctg = f_clasifica_imc(v_imc);
f_imprime(v_peso, v_talla, v_imc, v_ctg);
cout << "Desea continuar (S/N): "; cin >> op;
} while (op=='S' || op=='s' );
return 0;
} Ejemplo de Corrida de datos:

Peso Talla IMC Descripción


85 1.72 28.7317 Sobrepeso
60 1.80 18.5185 Bajo Peso
55 1.78 17.3589 Desnutrido
2. Complete el programa
que genera una matriz de nxn al azar, el programa deberá buscar la fila o columna que
tenga la mayor cantidad de 0, si hubiese empate se considera la primera coincidencia,
luego calculará la determinante por el método de los cofactores y aplicando
recursividad. Considerando una matriz de 3x3 y que la fila 1 tiene mayor cantidad de
ceros, entonces la determinante se puede calcular de la siguiente manera:
a1,1 a 1,2 a1,3

|a3,1 a 3,2 a3,3| |a a


a3,2 a3,3| | a a
a3,1 a 3,3| | a a
a 2,1 a 2,2 a2,3 =a 1,1 2,2 2,3 -a 1,2 2,1 2,3 +a 1,3 2,1 2,2
a3,1 a3,2

Y si la mayor cantidad de ceros fuera la columna 2, entonces será:


|
a1,1 a 1,2 a1,3

| | a
| a
| | a a a
| | a
a 2,1 a 2,2 a2,3 =−a1,2 2,1 2,3 +a 2,2 1,1 1,3 -a 3,2 1,1 1,3
a3,1 a 3,2 a3,3
a3,1 a3,3 a3,1 a 3,3 a2,1 a 2,3 |
Solamente deberá completar la siguiente codificación en la parte a y parte b, no está
permitido usar ninguna otra librería, ni código descargado de internet, de lo contrario
tendrá 0 en esta pregunta.
#include<iostream>
#include<conio.h>
#include<time.h>
#include<math.h>
using namespace std;
#define tam 200
void generar(int M[tam][tam],int n);
void imprimir(int M[tam][tam],int n);
int determinante(int M[tam][tam],int n);
void maximoceros(int M[tam][tam],int n,int &pos,int &tipo);
int main()
{int A[tam][tam], n=6;
srand(time(NULL));
generar(A,n);
imprimir(A,n);
cout<<"Determinante es "<<determinante(A,n)<<endl;
system("pause");
return 0;
}
void generar(int M[tam][tam],int n)
{for(int i=0;i<n;i++)
for(int j=0;j<n;j++)

Los profesores del curso Página 2 de 6


FACULTAD DE INGENIERIA MECANICA Semestre 2020-I
DACIBHCC

M[i][j]=rand()%10;
}

void imprimir(int M[tam][tam],int n)


{
cout<<"LA MATRIZ"<<endl;
for(int i=0;i<n;i++)
{for(int j=0;j<n;j++)
cout<<M[i][j]<<" ";
cout<<endl;
}
}
int determinante(int M[tam][tam],int n)
{int TEM[tam][tam];int s=0,pos,tipo;
if (n==2)
return M[0][0]*M[1][1]-M[0][1]*M[1][0];
maximoceros(M,n,pos,tipo);
if (tipo==1) //fila
{
for (int k=0;k<n;k++)
{for (int i=0,ii=0;i<n;i++)
if (i!=pos)
{for (int j=0,jj=0;j<n;j++)
if (j!=k)
{TEM[ii][jj]=M[i][j];
jj++;
}
ii++;
}
if (M[pos][k]!=0)
s=s+pow(-1.0,k+pos)*M[pos][k]*determinante(TEM,n-1);
}
}
else //columna
{// Completar aquí parte a
}
return s;
}
void maximoceros(int M[tam][tam],int n,int &pos,int &tipo)
{//Completar aquí parte b
}
Corrida del programa
LA MATRIZ
9 9 2 5 1 2
8 4 0 8 4 3
7 2 9 4 9 7
2 7 7 1 1 6
6 6 2 7 8 4
0 0 0 5 7 2
Determinante es 15816
Nota: En la función maximoceros, pos representa el número de fila o columna donde se encuentra
la mayor cantidad de ceros, tipo será 1 si pos es fila y 2 si pos es columna

Los profesores del curso Página 3 de 6


FACULTAD DE INGENIERIA MECANICA Semestre 2020-I
DACIBHCC

3. Se tiene la siguiente clase Cecua1, que es una serie de 2 ecuaciones de 1er grado con
dos incógnitas de la forma:
ax1 +bx2= c1
ax2 + bx2= c2,
Que resolverá mediante determinantes.
Halle la solución, sabiendo que tanto a, b y c son valores aleatorios en el rango que
ud crea conveniente, luego ud va a derivar Cecua2, para resolver una serie de tres
ecuaciones de 1er grado con tres incógnitas.
Todos con sus respectivos constructores, que deben estar inicializados en los
constructores tanto en la clase Cecua1{} como en el de la clase Cecua2{}
En el main(){ }, deberá crear un objeto del tipo Cecua1 C1(valores inicializados), lo
mismo para Cecua2 C2(valores inicializados), luego creara los objetos para los
valores aleatorios
Use solamente funciones para resolver mediante Visual C++ (no C estándar),
Ejemplo de la evidencia;
Valor de a: 15
Valor de b: 3
Valor de c: 16
Valor de d: 10
Valor de r1: 18
Valor de r2: 6
/////////////////////////////////////////////////////////
Con Valores Inicializados en el main() SISTEMA DE ECUACIONES DE PRIMER
GRADO.
7x + 4y =
9x + 3y =
Sistema compatible determinado.
x=
y=
SISTEMA DE ECUACIONES DE PRIMER GRADO.
15x + 3y =
16x + 10y =
Sistema compatible determinado.
///////////////////////////////////////////////////////////////////
Valor de a: 15
Valor de b: 3
Valor de c: 16
Valor de d: 10
Valor de e: 17
Valor de f: 15
Valor de g: 23
Valor de h: 10
Valor de i: 14
Valor de r1: 18
Valor de r2: 13
Valor de r3: 7

/////////////////////////////////////////////////////////
Inicializando en el main()
SISTEMA DE ECUACIONES DE 1ERA GRADO CON 3 INCOGNITAS
3x + 5y + 7z =11
9x + 5y + 12z =14
6x + 25y + 30z =35

Los profesores del curso Página 4 de 6


FACULTAD DE INGENIERIA MECANICA Semestre 2020-I
DACIBHCC

Sistema compatible determinado.


x = 5.66667
y = 7.48
z = -6.2

ECUACION LINEAL 3 INCOGNITAS


15x + 3y + 16z =17
10x + 23y + 10z =15
14x + 18y + 13z =7

Sistema compatible determinado.


x = -7.42232
y = 0.426696
z = 7.94092
Presione una tecla para continuar . . .

4. A Ud. se le encarga confeccionar una ventana en Windows, en donde involucre los


botones radios y checks, queda a su criterio el diseño de la interface, para el
pago neto, que una entidad propone para su personal de los siguientes niveles y sus
respectivos sueldos:
RESGUARDO=S/1300.00; SECRETARIA = S/1500.00; ADMINISTRADOR S/1700.00,
además tienen una bonificación por su estado Civil y por hijos por estar
casado=2.85%; por hijos: 1 a 2 hijos 2.15%; 3 a 5 hijos 2.45% y 2.65% para el
resto. Le descuentan por AFP 3.7% ó 2.45% si está afiliado al SNP; por Essalud
2.75%, por Reconstrucción 1.15%, por sindicato 1.25%. Los descuentos y
bonificaciones son del sueldo.
Nota Importante Use proyectos MFC, no se aceptarán otras formas de plataformas, ni
otros lenguajes o rutinas como el C estándar.

RUBRICA
CRITERIOS 5 3 2 1 0
CLARIDAD Y PRECISIÓN EN La solución tiene La solución no es No hay solución, la No hay claridad en la Respuesta con algunas

Los profesores del curso Página 5 de 6


FACULTAD DE INGENIERIA MECANICA Semestre 2020-I
DACIBHCC

LA SOLUCION EN VISUAL evidencia del completa, pero tiene codificación no es codificación ni precisión líneas sin precisar
C++ resultado con la corrida no hay completa, no tiene
corrida y lo guarda evidencia. evidencia
correctamente para
  su envío.
Utiliza Resuelve en modo El resultado no No hay solución del Sin solución ni líneas
adecuadamente En consola parcialmente demuestra el uso problema planteado, de código fuente
modo consola la la clase y la corrida no eficaz de la clase, no tiene líneas de código,
CONOCE Y RESUELVE solución completa del es completa, tiene hay corrida pero no evidencia hacia
LA PLATAFORMA VISUAL problema planteado, evidencia una solución.
C++ usando las clases. E
evidencia con la
corrida

RESUELVE CON Tiene criterio y Usa Usa una estrategia no Usa una estrategia No Usa una estrategia Sin solución ni código
CONOCIMIENTO DE LA una estrategia adecuada acorde con no entendible tiene eficiente, desconoce la fuente evidencia no
PLATAFORMA DE C++ CON eficiente en la la solución tiene errores de sintaxis. solución tiene errores de conocer el tema
WINDOWS confección del errores subsanables, No concluye en la sintaxis y no hay
formulario tiene corrida y solución. Evidencia evidencia de solución
cumpliendo con lo evidencia sin llegar a poca preparación
requerido en la la solución completa.
solución.
CONOCE LA FORMA Envía la solución en Envía la solución al Envía la solución solo Envía pantallazos sin No envía nada
CORRECTA DE ENVIAR LA una carpeta a su aula virtual. No envía parcialmente, no orden ni legibles desconoce
SOLUCION drive del Gmail. el link a su profesor envía el total al aula
Envía el link al del curso. ni al profesor
profesor sin demora.
Envía la solución en
un archivo de Word o
pdf al aula virtual de
la solución del
examen

Los profesores del curso Página 6 de 6

También podría gustarte