Upload
erysintroduccion
View
424
Download
2
Embed Size (px)
Citation preview
Introducción a la Computación
Lapso 2014_1Profesores: Camacaro Vladimir
Erys Piñero
Ejercicio de la zapatería
Una zapatería debido a su mes de aniversario realiza algunos descuentos de acuerdo al tipo de zapato:
Si tipo de zapato son “botas” o “botines” se hace un descuento del 2% al monto a pagar por el cliente
Si son “zapatillas” o “deportivos” se hace un descuento del 5% al monto a pagar por el cliente.
Suponga que los precios de los zapatos ya tienen incluido el IVASe cuenta con los siguientes datos: Tipo de zapato, costo y cantidad.
Se desea calcular e imprimir:• Monto a pagar por el cliente sin descuento.• Monto total del descuento.• Monto total a pagar con descuentos
Análisis del problema
Lista ClasificaciónTipo atributo/ZapateriaCosto atributo/ ZapateriaCantidad atributo/ ZapateriaZapateria claseCalcMontoSinDesc método/ ZapateriaCalcMontoTotalDesc método/ ZapateriaCalcMontoTotalPagar método/ Zapateria
// Calcula el Monto a pagar por el cliente sin descuento
MontoSinDesc Costo*Cantidad
// Calcula el Monto de los descuentos
si ((Tipo = “Bota”) o (Tipo = “Botines”)) MontoTotalDesc MontoSinDesc*0,02 sino inicio si ((Tipo = “Zapatilla”) o (Tipo = “Deportivo”)) MontoTotalDesc MontoSinDesc*0,05 sino MontoTotalDesc 0 fin //Calcula el Monto total a pagarMontoTotalPagar MontoSinDesc – MontoTotalDesc
Diseño de la estructura de la claseZapateriaalfanumérico Tiporeal Costo entero CantidadAsignarTipo(alfanumerico ↓ Tip)AsignarCosto(real ↓ Cost)AsignarCantidad( entero ↓ Cantid)alfanumerico SacarTipo()real SacarCosto( )entero SacarCantidad( )real CalcMontoSinDesc()real CalcMontoTotalDesc()real CalcMontoTotalPagar()
Observe como del diseño se obtiene la definición de la clase
clase Zapateria inicio
privado: alfanumerico Tipo
real Costo
entero Cantidad
publico:
AsignarTipo(alfanumerico ↓ Tip) AsignarCosto( real ↓ Cost) AsignarCantidad( entero ↓ Cantid) alfanumerico SacarTipo() real SacarCosto( ) entero SacarCantidad( ) real CalcMontoSinDesc() real CalcMontoTotalDesc() real CalcMontoTotalPagar() fin
Zapateriaalfanumerico Tiporeal Costo entero CantidadAsignarTipo(alfanumerico ↓Tip )AsignarCosto(real ↓ Cost)AsignarCantidad( entero ↓ Cantid)alfanumerico SacarTipo()real SacarCosto( )entero SacarCantidad( )real CalcMontoSinDesc()real CalcMontoTotalDesc()real CalcMontoTotalPagar()
Métodos
Atributos: Tipo, Costo, Cantidad
clase Zapateria
Asignar y Sacar
Los métodos de asignar y sacar quedan como ejercicios.
// Calcula el Monto a pagar por el cliente sin descuento
En el análisis se estudió:
MontoSinDesc Costo*Cantidad
En pseudolenguaje:real Zapateria CalcMontoSinDesc()inicio real MontoSinDesc MontoSinDesc Costo*Cantidad retonar MontoSinDescfin
// Calcula el Monto total de los descuentos.
En el análisis se estudió:
si ((Tipo = “Bota”) o (Tipo = “Botines”)) MontoTotalDesc MontoSinDesc*0,02
sino inicio si ((Tipo = “Zapatilla”) o (Tipo =
“Deportivo”))
MontoTotalDesc MontoSinDesc*0,05
sino MontoTotalDesc 0 fin
En pseudolenguaje:
real Zapateria CalcMontoTotalDesc()
inicio real MontoTotalDesc si ((Tipo = “Bota”) o (Tipo = “Botines”)) MontoTotalDesc CalcMontoSinDesc()*0,02
sino inicio si ((Talla = “Zapatilla”) o (Talla = “Deportivo”)) MontoTotalDesc CalcMontoSinDesc()*0,05 sino MontoTotalDesc 0
fin retornar MontoTotalDescfin
//Calcula el Monto total a pagar con descuentos
En el análisis se estudió: En pseudolenguaje:
real Zapateria CalcMontoTotalPagar()inicio real MontoTotalPagar MontoTotalPagar CalcMontoSinDesc() - CalcMontoTotalDesc() retornar MontoTotalPagar fin
MontoTotalPagar MontoSinDesc – MontoTotalDesc
// Programa de aplicación
principal( ) inicio Zapateria Zapato //Creación del objeto. InterfazEntrada(Zapato) InterfazSalida(Zapato) fin
InterfazEntrada(Zapateria ↑ Zapato) inicio alfanumerico Tip entero cantid real Cost //Definición de Variables
escribir “Introduzca el tipo de zapato”leer TipZapateria.AsignarTipo(Tip)
escribir “Introduzca el costo de las franelas”leer CostZapateria.AsignarCosto(Cost)escribir “Introduzca la cantidad que desea comprar”leer cantidZapateria.AsignarCantidad(cantid)
fin
Interfazsalida(Zapateria ↓ Zapato) inicio escribir “Monto a cancelar sin descuento BsF:”, Zapato.CalcMontoSinDesc() escribir “Monto total de los descuentos BsF:”, Zapato.CalcMontoTotalDesc()
escribir “Monto total a pagar con descuentos más IVA BsF. ” escribir Zapateria.CalcMontoTotalPagar()
fin