0% encontró este documento útil (0 votos)
52 vistas4 páginas

Programa de Cálculo de Helados y Descuentos

El documento describe un programa que calcula el importe de una compra de helados, el descuento aplicado, el importe a pagar y los caramelos obsequiados dependiendo del tipo y cantidad de helados comprados. Se especifican los precios de los helados, los porcentajes de descuento según la cantidad comprada y los caramelos obsequiados para el helado Sol. Se presentan el análisis, pseudocódigo y código del programa con sus entradas, procesos y salidas.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
52 vistas4 páginas

Programa de Cálculo de Helados y Descuentos

El documento describe un programa que calcula el importe de una compra de helados, el descuento aplicado, el importe a pagar y los caramelos obsequiados dependiendo del tipo y cantidad de helados comprados. Se especifican los precios de los helados, los porcentajes de descuento según la cantidad comprada y los caramelos obsequiados para el helado Sol. Se presentan el análisis, pseudocódigo y código del programa con sus entradas, procesos y salidas.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Semana

PROBLEMAS DESARROLLADOS
Problema

Análisis Memoria GUI


ENTRADA: X

PROCESO: Procesar
Limpiar
SALIDA:

Pseudocódigo

//Declarar las variables


double numero1, numero2, suma;
//Entrada
ingresarDatos();
//Proceso
efectuarCalculos();
//Salida
mostrarResultados();
//Definir los métodos
void ingresarDatos(){
numero1=Double.parseDouble(txtNumero1.getText());
numero2=Double.parseDouble(txtNumero2.getText());
}
void efectuarCalculos(){
suma = numero1+numero2;
}
void mostrarResultados(){
txtS.setText("Suma: "+suma);
}

GUI
Problema 1
Una fabrica vende helados al por mayor a precios unitarios dados en la siguiente tabla:
Helado Precio
Sol S/. 2.5
Fresa S/. 1.3
Mar S/. 2.0
Rico S/. 1.7
Como oferta especial la fábrica aplica un porcentaje de descuento sobre el importe de la compra de acuerdo
a la siguiente tabla:
Cantidad de helados Descuento
5%
7%
9%
11%
Adicionalmente, la fábrica le obsequia caramelos de acuerdo a la siguiente tabla:
Helado Caramelos de regalo
Sol 2 caramelos por cada helado
Otro helado Ninguno
Diseñe un programa que determine el importe de la compra, el importe del descuento, el importe a pagar y
la cantidad de caramelos de obsequio (mostrar 0 si no hay obsequio) por la compra de cierta cantidad de
helados del mismo tipo.
Análisis Memoria GUI
ENTRADA: helado, can

PROCESO:
según(helado){
caso “Sol”: precio=2.5 salir
caso “Fresa”: precio=1.3 salir X
caso “Mar”: precio=2.0 salir
caso “Rico”: precio=1.7 salir Procesar
} Limpiar
impcom = precio * can
si(can<10) desc = impcom * 0.05
sino si(can>=10 && can<20) desc = impcom * 0.07
sino si(can>=20 && can<30) desc = impcom * 0.09
sino desc = impcom *0.11
imppag = impcom - desc
si(helado == “Sol”) obs = can * 2
sino obs = 0

SALIDA: impcom, desc, imppag, obs


Pseudocódigo
Inicio
//Declarar de variables
cadena helado
entero can, obs
real precio, impcom, desc, imppag

//Entrada de datos
LEER helado, can
//Proceso
según(helado){
caso “Sol”: precio=2.5 salir
caso “Fresa”: precio=1.3 salir
caso “Mar”: precio=2.0 salir
caso “Rico”: precio=1.7 salir
}
impcom = precio * can
si(can<10) desc = impcom * 0.05
sino si(can>=10 && can<20) desc = impcom * 0.07
sino si(can>=20 && can<30) desc = impcom * 0.09
sino desc = impcom *0.11
imppag = impcom - desc
si(helado == “Sol”) obs = can * 2
sino obs = 0
//Salida
IMPRIMIR impcom, desc, imppag, obs
Fin

Codigo
protected void actionPerformedBtnProcesar(ActionEvent arg0) {
//Declarar de variables
String helado;
int can, obs;
double precio=0, impcom, desc, imppag;
//Entrada de datos
helado = cboHelado.getSelectedItem().toString();
can = Integer.parseInt(txtCantidad.getText());
//Proceso
switch(helado){
case "Sol": precio=2.5; break;
case "Fresa": precio=1.3; break;
case "Mar": precio=2.0; break;
case "Rico": precio=1.7; break;
}
impcom = precio * can;
if(can<10) desc = impcom * 0.05;
else if(can>=10 && can<20) desc = impcom * 0.07;
else if(can>=20 && can<30) desc = impcom * 0.09;
else desc = impcom *0.11;
imppag = impcom - desc;
if(helado == "Sol") obs = (can) * 2;
else obs = 0;
//Salida
//IMPRIMIR impcom, desc, imppag, obs
txtS.setText("Importe de compra : "+impcom+"\n");
txtS.append("Descuento : "+desc+"\n");
txtS.append("importe a Pagar : "+imppag+"\n");
txtS.append("Obsequio : "+obs+"\n");

}
modular
//Declarar de globales
String helado;
int can, obs;
double precio=0, impcom, desc, imppag;
// Procesa la pulsación del botón Procesar
protected void actionPerformedBtnProcesar(ActionEvent arg0) {
//Entrada de datos
ingresarDatos();
//Proceso
//Calcular Importe de compra
calcularIC();
//calcular el descuento
calcularDescuento();
//calcular el importe a pagar
calcularIP();
//Calcular el obsequio
calcularObsequio();
//Salida
//IMPRIMIR impcom, desc, imppag, obs
mostrarResultados();
}
//Definir métodos
void ingresarDatos() {
helado = cboHelado.getSelectedItem().toString();
can = Integer.parseInt(txtCantidad.getText());
}
void calcularIC() {
switch(helado){
case "Sol": precio=2.5; break;
case "Fresa": precio=1.3; break;
case "Mar": precio=2.0; break;
case "Rico": precio=1.7; break;
}
impcom = precio * can;
}
void calcularDescuento() {
if(can<10) desc = impcom * 0.05;
else if(can>=10 && can<20) desc = impcom * 0.07;
else if(can>=20 && can<30) desc = impcom * 0.09;
else desc = impcom *0.11;
}
void calcularIP() {
imppag = impcom - desc;
}
void calcularObsequio() {
if(helado == "Sol") obs = (can) * 2;
else obs = 0;
}
void mostrarResultados() {
txtS.setText("Importe de compra : "+impcom+"\n");
txtS.append("Descuento : "+desc+"\n");
txtS.append("importe a Pagar : "+imppag+"\n");
txtS.append("Obsequio : "+obs+"\n");
}

GUI

También podría gustarte