100% encontró este documento útil (2 votos)
400 vistas5 páginas

Ejercicio 2

El documento presenta una metodología para resolver problemas de forma modular. Propone calcular el porcentaje de asistencia de un estudiante a clases teóricas y de laboratorio para determinar si tiene derecho a realizar un examen, el cual requiere como mínimo el 75% de asistencia. Se definen las variables, constantes y procesos requeridos, y se diseña la solución a través de diagramas y flujogramas modulares.

Cargado por

Carlos Escobar
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
100% encontró este documento útil (2 votos)
400 vistas5 páginas

Ejercicio 2

El documento presenta una metodología para resolver problemas de forma modular. Propone calcular el porcentaje de asistencia de un estudiante a clases teóricas y de laboratorio para determinar si tiene derecho a realizar un examen, el cual requiere como mínimo el 75% de asistencia. Se definen las variables, constantes y procesos requeridos, y se diseña la solución a través de diagramas y flujogramas modulares.

Cargado por

Carlos Escobar
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 5

Formato Metodología para Resolver Problemas (con modularidad)

ENUNCIADO:
Para la realización del segundo examen parcial de Introducción a la Informática se exigirá que
cada estudiante haya asistido a, por lo menos, el 75% de las 8 clases teóricas y 4 sesiones de
laboratorios a evaluar. Dado el carnet del estudiante y sus respectivas asistencias, despliegue
carnet, porcentaje de asistencia de cada tipo de actividad y si tiene derecho a realizar el examen.

SOLUCIÓN
I. Planteamiento General del
Problema
ENTRADA DE DATOS PROCESO . SALIDA DE DATOS

Asistencia a clases Puede realizar la prueba

Carnet del estudiante

II. Diagrama Jeràrquico Modular ( Diagrama Top-Down, Análisis


Jerárquico Modular)
SoluciónEjercicio2
|
Program
|
Main
|

CalcularAsistencia CalcularPorcentaje

III.Análisis del problema


a. Definición de Variables de Salida
Nombre Tipo Descripción
porcentaje Real Contiene el porcentaje de asistencia a clase

b. Definición de Datos de Entrada:


Variables:
Nombre Tipo Descripción
carnet Alfanuméroco Contiene el carnet del estudiante
teoricas Real Clases teóricas a las que ha asistido
lab Real Clases de laboratorios a los que ha asistido

Constantes:
Nombre Tipo Descripción Valor
VALORDEPORCENTAJE Entero Es el porcentaje a calcular 100
TOTALCLASES Entero Sumatoria total de las clases teóricas y de laboratorios 12
c. Restricciones:
teoricas>0
lab>0

d. Proceso

asistencia = teoricas + lab


porcentaje = VALOR PORCENTAJE * asistencia / TOTALCLASES

e. Definición de Variables de Proceso


No hay

IV. Diseño de la Solución ( Flujogramas Módulo Principal y Submòdulos)

Inicio 1

VALORDEPORCENTAJE=100
lab
TOTALCLASES=12

Porcentaje=VALORDEPORCENT
“Digite su carnet” AJE*asistencia/TOTALCLASES

asistencia=teoricas+lab
carnet

“Digite la cantidad
de clases teóricas
ha las que ha porcentaje
asistido” >9

teoricas “El estudiante: cuya “El estudiante: cuya


nota es: no tiene nota es: tiene
“Digite la cantidad derecho a realizar el derecho a realizar el
de clases de examen” examen”
laboratorios ha las
que ha asistido”

1 Fin

a. Módulo Principal Main

Inicio

asistencia=CalcularAsistencia

porcentaje=CalcularPorcentaje

Fin
Módulo: CalcularAsistencia

CalcularAsistencia

asistencia=teoricas+lab

Retomar asistencia

Módulo: CalcularPorcentaje

CalcularPorcentaje

porcentaje
>9

“El estudiante: cuya “El estudiante: cuya


nota es: no tiene nota es: tiene
derecho a realizar el derecho a realizar el
examen” examen”

Fin

Codificación class Program


{
//Constentes
const int VALORDEPORCENTAJE = 100;
const int TOTALCLASES = 12;

static void Main(string[] args)


{
// Identificación del Programa
Console.WriteLine("GR21040Guía7Ejercicio2-Realizar prueba según el porcentaje de
asistencia");
Console.WriteLine("Autor:Guerra Rivas, Fátima Gabriela GL:10");

//Declaración de Variables
int teoricas, lab, porcentaje, asistencia;
string carnet;

//Entrada de Datos
Console.WriteLine("Digite su carnet");
carnet = Console.ReadLine();
Console.WriteLine("Digite el número de clases teóricas a las que ha asistido");
teoricas = int.Parse(Console.ReadLine());
Console.WriteLine("Digite el número de veces que ha asistido a laboratorios");
lab = int.Parse(Console.ReadLine());

//Proceso
asistencia = CalcularAsistencia(teoricas, lab);
porcentaje = CalcularPorcentaje(asistencia, carnet);
Console.ReadKey();
}

///<sumary>
///Método para calcular el número de clases
///<param name="teoricas"></param>
///<param name="lab"></param>
///<returns></returns>
static int CalcularAsistencia(int teoricas, int lab)
{
int asistencia;
asistencia = teoricas + lab;
return asistencia;
}

///<sumwry></sumwry>
///Método para calcular porcentaje
///<param name="asistencia"></param>
///<returns></returns>
static int CalcularPorcentaje(int asistencia, string carnet)
{
int porcentaje;
porcentaje = VALORDEPORCENTAJE * asistencia / TOTALCLASES;
if (porcentaje >= 9)
{
Console.WriteLine("El estudiante {0} cuya asistencia es {1:0} porciento tiene
derecho a realizar la prueba", carnet, porcentaje);
}
else
{
Console.WriteLine("El estudiante {0} cuya asistencia es {1:0} porciento no tiene
derecho a realizar la prueba", carnet, porcentaje);
}
return porcentaje;
}
}
}
2

También podría gustarte