7
EJEMPLO DE DESARROLLO - PSEUDOCODIGO Ejemplo 1. En una empresa que brinda mantenimiento a PC’s se han clasificado a las maquinas de acuerdo al numero de desperfectos que estas presentan. Si la PC no tiene ninguna falla es tipo A, si la PC tiene 3 fallas se le considera tipo B y si la PC tiene mas de 3 fallas es tipo C. Escribir un algoritmo para implementar este proceso, No se sabe cuantas PC’s se evaluaran en un día, el algoritmo debe preguntar si se desea continuar y terminar el ingreso “N”. Asimismo al finalizar se debe mostrar por pantalla las estadísticas porcentuales correspondientes a la evaluación de ese día. Ejemplo del reporte a mostrar: TIPO TOTAL DE COMPUTADORAS PORCENTAJE A 33 52.33% B 24 38.71% C 5 8.06% Análisis Del Problema: En este problema se utilizara el método LeeProcesaNumFallas() , el cual lee el numero de fallas de cada computadora y simultáneamente procesa este dato, realiza la clasificación correspondiente al numero de fallas, calcula las estadísticas solicitadas y finalmente muestra el mensaje correspondiente. Asimismo se utiliza el método MuestraEstadisticas(). Los contadores ContA, ContB y ContC deben ser inicializados en cero. Clase Solución Del Problema: 1

EJEMPLO DE PROGRAMAS EN PSEUDOCODIGO.doc

Embed Size (px)

Citation preview

Page 1: EJEMPLO DE PROGRAMAS EN PSEUDOCODIGO.doc

EJEMPLO DE DESARROLLO - PSEUDOCODIGO

Ejemplo 1.

En una empresa que brinda mantenimiento a PC’s se han clasificado a las maquinas de acuerdo al numero de desperfectos que estas presentan. Si la PC no tiene ninguna falla es tipo A, si la PC tiene 3 fallas se le considera tipo B y si la PC tiene mas de 3 fallas es tipo C.Escribir un algoritmo para implementar este proceso, No se sabe cuantas PC’s se evaluaran en un día, el algoritmo debe preguntar si se desea continuar y terminar el ingreso “N”. Asimismo al finalizar se debe mostrar por pantalla las estadísticas porcentuales correspondientes a la evaluación de ese día.

Ejemplo del reporte a mostrar:

TIPO TOTAL DE COMPUTADORAS PORCENTAJEA 33 52.33%B 24 38.71%C 5 8.06%

Análisis Del Problema:

En este problema se utilizara el método LeeProcesaNumFallas() , el cual lee el numero de fallas de cada computadora y simultáneamente procesa este dato, realiza la clasificación correspondiente al numero de fallas, calcula las estadísticas solicitadas y finalmente muestra el mensaje correspondiente.

Asimismo se utiliza el método MuestraEstadisticas().

Los contadores ContA, ContB y ContC deben ser inicializados en cero.

Clase Solución Del Problema:

Clase Inspector

Atributos:NumFallas

Métodos: LeeProcesaNumFallas() MuestraEstadisticas()

1

Page 2: EJEMPLO DE PROGRAMAS EN PSEUDOCODIGO.doc

Implementación en Pseudocodigo:

CLASE INSPECTOR { // Atributos entero NumFallas entero TipoA entero TipoB entero TipoC

//Métodos Inspector() { NumFallas = 0

TipoA = 0 , TipoB = 0 , TipoC = 0 }

LeeProcesoNumFallas( ) { caracter Rpta = “ ”

Mientras (Rpta < > ‘N’ y Rpta < > ‘n’)

Escribe (“Ingrese el numero de fallas”) Leer ( NumFallas) Si ( NumFallas = 0) TipoA <- TipoA + 1 Sino Si ( NumFallas <= 3) TipoB TipoB + 1 Sino TipoC TipoC + 1 FinSi FinSi Escribe ( “¿ Desea Continuar S/N? ”) Leer (Rpta)

FinMientras }

MuestraEstadisticas() { entero Total. Total TipoA + TipoB +TipoC Escribir ( “ ESTADISTICAS “) Escribir (“ TIPO TOTAL DE COMPUTADORAS PORCENTAJE “) Escribir (“-----------------------------------------------------------------------------------“) Escribir ( “ A “ , TipoA , TipoA * 100 / Total ) Escribir ( “ B “ , TipoB , TipoB * 100 / Total ) Escribir ( “ C “ , TipoC , TipoC * 100 / Total ) } }

2

Page 3: EJEMPLO DE PROGRAMAS EN PSEUDOCODIGO.doc

En Proceso:Inspector Oscar ← nuevo Inspector()Oscar. LeeProcesaNumFallas()Oscar.MuestraEstadisticas()

Fin.

Ejemplo 2.

Una financiera tiene 3000 clientes, ha decidido premiar a su staff de 30 vendedores. Escribir una solución que permita, saber quien es el ejecutivo con el mayor número de contratos conseguidos pues recibirá un Bono especial de $ 500 dólares como premio.Además se otorgara otros premios al resto del personal según la siguiente tabla:

Numero de contratos conseguidos Bono ($)Mas de 100 200Menos de 50 pero mas de 10 50Menores de 100 y mayores o iguales a 50 100

Determinar el Monto total en dólares que desembolsara la financiera en concepto de bonos.

Análisis Del Problema:

En este problema se utilizara el método ProcesaDatos() , para leer el nombre de los vendedores de la Financiera y el numero de contratos que han colocado, determinando al ejecutivo que obtendra el premio, tambien se procesara todos los casos por los cuales la financiera otorgara por bonos, obteniendo el total del importe en bonos.

Asimismo se utiliza el método MuestraResultados().

Clase Solución Del Problema:

Clase BonosFinanciera

Atributos:NomVendedorGanadorNumContratosGanadorTotalEnBonos

Métodos: ProcesaDatos() MuestraResultados()

3

Page 4: EJEMPLO DE PROGRAMAS EN PSEUDOCODIGO.doc

Implementación en Pseudocodigo:

CLASE BonosFinanciera { // Atributos

Cadena NomVendedorGanadorEntero NumContratosGanadorReal TotalEnBonos

//Métodos BonosFinanciera() {

NumContratosGanador ← 0 TotalEnBonos ← 0

}

ProcesoDatos( )

{ cadena Nombre Entero NumContrato entero i Para i desde 1 hasta 30 Escribe (“Ingrese el nombre del vendedor: ” , i ) Leer (Nombre) Escribe (“Ingrese numero de contratos ” )

Leer ( NumContrato) Si ( NumContratos > NumContratosGanador)

NumContratosGanador <- NumContratos NomVendedorGanador <- Nombre FinSi. Si ( NumContratos > 10 y NumContratos < 50 ) TotalEnBonos = TotalEnBonos + 50 FinSi Si ( NumContratos > = 50 y NumContratos < 100 ) TotalEnBonos = TotalEnBonos + 100 FinSi

Si ( NumContratos >= 100 ) TotalEnBonos = TotalEnBonos + 200 FinSi FinPara

}

4

Page 5: EJEMPLO DE PROGRAMAS EN PSEUDOCODIGO.doc

MuestraResultados() { Cadena NomVendedorGanador

Entero NumContratosGanadorReal TotalEnBonos

Escribir ( “ EL EJECUTIVO GANADOR ES : “ , NomVendedorGanador )Escribir (“EL TOTAL DE CONTRAROS SON:” ,NumContratosGanador )Escribir (“EL TOTAL A DESEMBOLSAR POR LA FINANCIERA ES: “) Escribir ( TotalEnBonos )

}

} //Fin de la clase.

En Proceso:BonosFinanciera Financiera ← nuevo BonosFinanciera ()Financiera.ProcesaDatos()Financiera .MuestraResultados()

Fin.

5