Documente Academic
Documente Profesional
Documente Cultură
Estructuras selectivas
Lapso 2012_2
11/12/2012 18:32
11/12/2012 18:32
La instruccin si puede escribirse tambin ms general para controlar la ejecucin de un grupo de sentencias, de la siguiente forma: si (condicin) inicio instruccin1 instruccion2 : instruccin fin
11/12/2012 18:32
11/12/2012 18:32
si (condicin1) inicio si (condicion2) instruccion1 sino instruccion2 fin sino inicio si (condicion3) instruccion3 sino instruccion4 fin
11/12/2012 18:32 Profs: Erys Piero y Vladimir Camacaro 8
EJERCICIOS
11/12/2012 18:32
Ejercicio
Un restaurant de la ciudad, ofrece desayunos a 15,00BsF. almuerzos 35,00 BsF. y cenas 20.00 BsF. Estos montos no contienen IVA. Por la venta se requiere: Monto total vendido. Como datos de entrada se tiene: Tipo de comida (Desayuno, Almuerzo, Cena), nmero de comidas, nmero de nios y cantidad de personas de la tercera edad. Se tiene como poltica del establecimiento: A los nios se les hace un descuento del 5% en el almuerzo y el 10% en la cena y a las personas de la tercera edad un descuento del 12% en el desayuno.
11/12/2012 18:32 Profs: Erys Piero y Vladimir Camacaro 10
Venta ---------------- Clase TipoComida------------ Atributo/Venta NroComida------------- Atributo/Venta NroNios ----------- Atributo/Venta Nro3eraEdad---------- Atributo/Venta CalcMontoVendido- Mtodo/Venta
11/12/2012 18:32 Profs: Erys Piero y Vladimir Camacaro 11
11/12/2012 18:32
12
11/12/2012 18:32
13
Venta
alfanumrico TipoComida entero NroComida entero NroNios entero Nro3raEdad AsignarTipoComida(alfanumricoTC) AsignarNroComida(enteroNC) AsignarNroNios(enteroNN) AsignarNro3raEdad(enteroN3E) alfanumrico SacarTipoComida() entero SacarNroComida() entero SacarNroNios() entero SacarNro3raEdad() real CalcMontoVendido()
11/12/2012 18:32
14
Implementacin en pseudolenguaje
11/12/2012 18:32
15
// Definicin de la estructura de la clase clase Venta inicio privado: alfanumrico TipoComida entero NroComidas, NroNios, Nro3raEdad publico: //Mtodos para asignar o meter datos AsignarTipoComida(alfanumerico TC) AsignarNroComidas(entero NC) AsignarNroNios(entero NN) AsignarNro3raEdad(entero NC3E) //Mtodos para sacar datos alfanumrico SacarTipoComida() entero SacarNroComidas() entero SacarNroNios() entero SacarNro3raEdad() // Otros mtodos propios del objeto real CalcMontoVendido() fin // Venta
11/12/2012 18:32
16
//Mtodos propios de la clase Venta AsignarTipoComida(alfanumerico TC) inicio TipoComida TC fin Venta AsignarNroComida( entero NC) inicio NroComida NC fin Venta AsignarNroNios(entero NN) inicio NroNios NN fin Venta AsignarNro3raEdad(entero N3E) inicio Nro3raEdad N3E fin
11/12/2012 18:32 Profs: Erys Piero y Vladimir Camacaro 17
alfanumrico Venta SacarTipoComida() inicio retornar TipoComida fin entero Venta SacarNroComida() inicio retornar NroComida fin entero Venta SacarNroNios() inicio retornar NroNios fin entero Venta SacarNro3raEdad() inicio retornar Nro3raEdad fin
11/12/2012 18:32
18
real Venta CalcMontoVendido() inicio real MontVendido si( Tipocomida=Desayuno) MontVendido NroComidas*15 Nro3eraEdad*15*12/100 sino si(Tipocomida=Almuerzo) MontVendido NroComidas*35 NroNios*35*5/100 sino si(Tipocomida=Cena) MontVendido NroComidas*20 NroNios*20*10/100 sino Montvendido 0 MontVendido MontVendido+MontVendido*12/100 retornar MontVendido fin
11/12/2012 18:32
19
// Programa de aplicacin principal( ) inicio Venta ObjVenta // Creacin del objeto InterfazEntrada(ObjVenta) InterfazSalida(ObjVenta) fin
11/12/2012 18:32
20
InterfazEntrada(Venta ObjVenta ) inicio entero NC,NN,N3E // Definicin de variables alfanumrico TC escribir Escriba el tipo de comida leer TC ObjVenta.AsignarTipoComida(TC) escribir Escriba el numero de comida leer NC ObjVenta.AsignarNroComida(NC) escribir Escriba el numero de nios leer NN ObjVenta.AsignarNroNios(NN) escribir Escriba el numero de tercera edad leer N3E ObjVenta.AsignarNro3raEdad(N3E) fin InterfazSalida (Venta ObjVenta) inicio escribir El monto vendido es: ,ObjVenta.CalcMontoVendido() fin
11/12/2012 18:32 Profs: Erys Piero y Vladimir Camacaro 21