miércoles, 13 de julio de 2011

Métodos con Retorno



Problema01

La tienda Dulce Infantil S.A ha puesto a la venta golosinas a los precios unitarios dados en la siguiente tabla:

Marca
Precio unitario
GN
S/. 0.3
Morochas
S/. 0.8
Margarita
S/. 0.6
Integral
S/. 1.5









La tienda ofrece un descuento sobre el importe de la compra de acuerdo:

Importe de Compra
Descuento
Menos de 10.0
15%
Más de 10.0 y menos de 40.0
20.5%
Más de 40.0
35%








Adicionalmente, si el cliente adquiere recibe como obsequio “Chocolate Sorrento” si compra más de 50.0 de “Margaritas”. Además recibe “Caramelo” si compra más de S/30.0 de galleta GN. Diseñe un algoritmo que determine el importe de la compra, el importe del descuento, el importe a pagar y el regalo.

Solución con métodos (Conn Retorno) y Variables locales

void procesar(){
entero marca, cantidad
real impCompra, impDescuento, impVenta
cadena obsequio

            marca  = getMarca();
cantidad = getCantidad();
            impCompra  = calculoImpCompra (marca , cantidad);
            impDescuento = calculoImpDescuento (impCompra );
            impVenta  = calculoImpVenta (impCompra , impDescuento);
            obsequio  = regalo (impCompra, marca);
            reporte (impCompra  , impDescuento, impVenta  , obsequio  );
}
Int getMarca(){
            return cboMarca.getSelectedIndex();
}
Int getCantidad (){
            return Integer.parseInt(txtCantidad.getText());
}

double calculoImpCompra (int marca, int cantidad){
            double salida =0.0;
            switch(marca){
case 0: salida = cantidad * 0.3; break;
            case 1: salida = cantidad * 0.8; break;
            case 2: salida = cantidad * 0.6; break;
            case 3: salida = cantidad * 1.5; break;
}
return salida;
}

double calculoImpDescuento (double impCompra){
double salida =0.0;
if(impCompra <10.0)               
salida = impCompra*0.15;
            else if(impCompra <40.0)                                           
salida = impCompra*0.205;
            else
salida = impCompra*0.35;
            return salida;
}
double calculoImpVenta (double impCompra,  double impDescuento){        
            return impCompra – impDescuento ;
}

String regalo (double impCompra,  int marca){
            String salida=””;

if(impCompra > 50.0 && marca ==2){             
salida =” Chocolate Sorrento”;
}else if(impCompra > 30.0 && marca ==0){                
            salida =”Caramelo”;
}else{
            salida =”Nada”;
}
            return salida;
}
void reporte(double impCompra , double impDescuento , double impVenta,  String obsequio){
imprimir  impCompra , impDescuento ,impVenta,  obsequio
}
Problema02

La tienda Dulce Infantil S.A ha puesto a la venta gaseosa los precios unitarios dados en la siguiente tabla:

Marca
Precio unitario
Kola Real
S/. 1.3
InKa Kola
S/. 1.8
Coca Cola
S/. 1.6
Maltipower
S/. 2.5








La tienda ofrece un descuento sobre el importe de la compra de acuerdo:


Importe de Compra
Descuento
Menos de S/100.0
25%
Más de S/100.0 y menos de S/400.0
30%
Más de S/400.0
45%









Adicionalmente, el cliente recibe como obsequio “Cuaderno” si compra más de S/500.0 de “CocaCola”. Además recibe “Billetera” si compra más de S/300.0 de gaesosa “Maltipower”. Diseñe un algoritmo que determine el importe de la compra, el importe del descuento, el importe a pagar y el regalo.

Solución con métodos (Con Retorno) y Variables locales

void procesar(){
entero marca, cantidad
real impCompra, impDescuento, impVenta
cadena obsequio

            marca  = getMarca();
cantidad = getCantidad();
            impCompra  = calculoImpCompra (marca , cantidad);
            impDescuento = calculoImpDescuento (impCompra );
            impVenta  = calculoImpVenta (impCompra , impDescuento);
            obsequio  = regalo (impCompra, marca);
            reporte (impCompra  , impDescuento, impVenta  , obsequio  );
}
Int getMarca(){
            return cboMarca.getSelectedIndex();
}
Int getCantidad (){
            return Integer.parseInt(txtCantidad.getText());
}

double calculoImpCompra (int marca, int cantidad){
            double salida =0.0;
            switch(marca){
case 0: salida = cantidad * 0.3; break;
            case 1: salida = cantidad * 0.8; break;
            case 2: salida = cantidad * 0.6; break;
            case 3: salida = cantidad * 1.5; break;
}
return salida;
}

double calculoImpDescuento (double impCompra){
double salida =0.0;
if(impCompra <10.0)               
salida = impCompra*0.15;
            else if(impCompra <40.0)                                           
salida = impCompra*0.205;
            else
salida = impCompra*0.35;
            return salida;
}
double calculoImpVenta (double impCompra,  double impDescuento){        
            return impCompra – impDescuento ;
}

String regalo (double impCompra,  int marca){
            String salida=””;

if(impCompra > 50.0 && marca ==2){             
salida =” Chocolate Sorrento”;
}else if(impCompra > 30.0 && marca ==0){                
            salida =”Caramelo”;
}else{
            salida =”Nada”;
}
            return salida;
}
void reporte(double impCompra , double impDescuento , double impVenta,  String obsequio){
imprimir  impCompra , impDescuento ,impVenta,  obsequio
}






1 comentario:

  1. Mummys Gold Casino App - JAMHub
    Check out Mummys 출장마사지 Gold Casino App 의왕 출장마사지 on JAM 충주 출장안마 Hub to 영주 출장마사지 learn more about the casino app and how to use it. Get the 수원 출장샵 latest version

    ResponderEliminar