You are on page 1of 16

Introduccin a la computacin

Ejercicios utilizando estructuras selectivas

Lapso 2012_I
17/05/2012 9:55 Profs: Vladimir Camacaro y Erys Piero 1

Ejercicio 1
Una academia de idiomas ofrece a los estudiantes cursos de ingls, francs e italiano por niveles. El primer nivel de ingls cuesta 700Bs, el primer nivel de francs cuesta 600Bs y el de italiano 550Bs. El costo del segundo nivel de italiano es del 20% mas que el primer nivel, el segundo nivel de francs es de 25% mas, mientras que el costo del segundo nivel de ingls es de un 30% mas por el material de apoyo utilizado. Si se tiene como dato de entrada la cantidad de estudiantes, el idioma y el nmero que corresponde al nivel y el nombre de la academia. Calcule el monto de los ingresos y calcule el monto del IVA correspondiente.

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

Anlisis del problema


Lista Clasificacin Academia ------------- Clase Nombre ------------ Atributo/Academia CalcIngresos --------- Mtodo/Academia CalcIVA -------------- Mtodo/Academia Lista Clasificacin Estudiante -------------- Clase Idioma ------------- Atributo/Estudiante NroNivel -------------- Atributo/Estudiante NroEstudiantes-------- Atributo/Estudiante

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

Anlisis del problema


si (Idioma=ingls) inicio si ( Nronivel=1) TotIngresos NroEstudiantes*700 sino TotIngresos NroEstudiantes*(700*1,30) fin sino inicio si (Idioma=francs) inicio si ( Nronivel=1) TotIngresos NroEstudiantes*600 sino TotIngresos NroEstudiantes*(600*1,25) fin sino inicio si (Idioma=italiano) inicio si (Nronivel=1) TotIngresos NroEstudiantes*550 sino TotIngresos NroEstudiantes*(550*1,2) fin sino TotIngresos 0 fin fin MontoIVA TotIngresos*0,12 17/05/2012 9:55 Profs: Vladimir Camacaro y Erys Piero 4

Diseo de la estructura de las clases Academia y Estudiantes

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

Diseo de las clases


Estudiante
alfanumerico Idioma entero NroNivel entero NroEstudiantes AsignarIdioma(alfanumerico TI ) AsignarNroNivel(entero Nn) AsignarNroEstudiante(entero Ne) alfanumerico SacarIdioma() real SacarNroNivel() real SacarNroEstudiante()

Academia

alfanumrico Nombre AsignarNombre(alfanumricol Nomb) alfanumerico SacarNombre() real CalcIngresos(Estudiante OEstud) real CalcMontoIva(Estudiante OEstud)

17/05/2012

Introduccin a la Computacin.

// Definicin de la estructura de la clase Estudiante clase Estudiante inicio privado: alfanumrico Idioma entero NroNivel entero NroEstudiantes publico: AsignarIdioma(alfanumericoTI) AsignarNroNivel(entero Nn) AsignarNroEstudiante(entero Ne) alfanumerico SacarIdioma( ) entero SacarNroNivel( ) entero SacarNroEstudiante( ) fin

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

//Mtodos propios de la clase Estudiante Estudiante AsignarIdioma(alfanumerico TI) inicio Idioma TI fin Estudiante AsignarNroNivel(entero Nn) inicio NroNivel Nn fin Estudiante AsignarNroEstudiante(entero Ne) inicio NroEstudiantes Ne fin alfanumerico Estudiante SacarIdioma( ) inicio retornar Idioma fin

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

entero Estudiante SacarNroNivel( ) inicio retornar NroNivel fin entero Estudiante SacarNroEstudiante( ) inicio retonar NroEstudiantes fin

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

// Definicin de la estructura de la clase Academia clase academia inicio privado: alfanumerico Nombre publico: AsignarNombre( alfanumerico Nomb) alfanumerico SacarNombre( ) real CalcIngresos(Estudiante OEstud) real CalcMontoIva(Estudiante OEstud) fin

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

10

//Mtodos propios de la clase Academia Academia AsignarNombre( alfanumerico Nomb) inicio Nombre Nomb fin alfanumerico Academia SacarNombre( ) inicio retornar Nombre fin

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

11

real Academia CalcIngresos(Estudiante OEstud) inicio real Totingresos si (OEstud.SacarIdioma( ) = ingles) inicio si (OEstud.SacarNroNivel( ) = 1) TotIngresos OEstud.SacarNroEstudiante( )*700 sino TotIngresos OEstud.SacarNroEstudiante( )*(700*1,30) fin sino inicio si (OEstud.SacarIdioma( ) = francs) inicio si (OEstud.SacarNroNivel( ) = 1) TotIngresos OEstud.SacarNroEstudiante( )*600 sino TotIngresos OEstud.SacarNroEstudiante( )*(600*1,25) fin sino inicio si (OEstud.SacarIdioma( ) = italiano) inicio si (OEstud.SacarNroNivel( ) = 1) TotIngresos OEstud.SacarNroEstudiante( )*550 sino TotIngresos OEstud.SacarNroEstudiante( )*(550*1,2) fin sino TotIngresos 0 retornar Totingresos fin

Declaracin de la variable: Totalingresos

fin

Retornar la variable: Totalingresos

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

12

real Academia CalcMontoIva(Estudiante OEstud) inicio retornar CalcIngresos(OEstud) *0,12 fin Otra forma de hacer Otra forma: el mtodo
real Academia CalcMontoIva(Estudiante OEstud) inicio real MontoIVA MontoIVA CalcIngresos(OEstud) *0,12 retornar MontoIVA fin

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

13

// Programa de aplicacin principal( ) inicio Estudiante OEstud //Creacin del objeto. Academia OAcademia //Creacin del objeto. InterfazEntrada(OEstud,OAcademia) InterfazSalida(OEstud,OAcademia) fin

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

14

InterfazEntrada(Estudiante OEstud, Academia OAcademia) inicio entero Ne entero Nn alfanumerico nomb alfanumerico TI //Definicin de Variables escribir Introduzca el nombre de la Academia leer nomb OAcademia.AsignarNombre(nomb) escribir Introduzca la cantidad de estudiantes leer Ne OEstudiante.AsignarNroEstudiante(Ne) escribir Introduzca el idioma en curso leer TI OEstudiante.AsignarIdioma(TI) Escribir Introduzca el nivel del curso leer Nn OEstudiante.AsignarNroNivel(Nn) fin

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

15

Interfazsalida(Estudiante OEstud, Academia OAcademia) inicio escribir Total de ingresos es:, OAcademia.CalcIngresos(OEstud) escribir Monto por IVA es:, OAcademia.CalcMontoIva(OEstud) fin

17/05/2012 9:55

Profs: Vladimir Camacaro y Erys Piero

16

You might also like