Está en la página 1de 4

Java Foundations

ESCUELA SUPERIOR DE TECNOLOGÍA


PROFESIONAL TECNÓLOGO

Guia de Laboratorio Nº 01
Programación básica - Concepto de algoritmos -
Programación secuencial
Logros:
Configura una aplicación Java
Implementa un proceso de desarrollo de software
Identifica ¿Qué hace un programa?

Caso desarrollado 01: Gestionar la venta de un producto


Crear una aplicación Java que permita seleccionar un producto desde un cuadro de lista y
determine el subtotal, descuento(10% del subtotal) y el monto neto a pagar por una cantidad de
productos seleccionados.

Tener en cuenta:
- La respuesta se debe mostrar en una lista.
- El prototipo del formulario debe tener el siguiente aspecto:

Solución:

package pFormularios;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;

Elaborado por: Ing. Manuel Torres.


Java Foundations

import javax.swing.border.EmptyBorder;
import java.awt.Color;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.JComboBox;
import javax.swing.JTextField;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.border.TitledBorder;
import javax.swing.JList;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JScrollPane;

public class frmVentaProductos extends JFrame {

private JPanel contentPane;


private JTextField txtCantidad;

DefaultListModel moR=new DefaultListModel();


/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
frmVentaProductos frame = new frmVentaProductos();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}

/**
* Create the frame.
*/
public frmVentaProductos() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 538, 334);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);

JPanel panel = new JPanel();


panel.setBackground(Color.ORANGE);
panel.setBounds(5, 5, 512, 43);
contentPane.add(panel);
panel.setLayout(null);

JLabel lblNewLabel = new JLabel("CONTROL DE VENTA DE PRODUCTOS");


lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 16));
lblNewLabel.setBounds(10, 11, 322, 21);
panel.add(lblNewLabel);

JComboBox cboProducto = new JComboBox();


cboProducto.setBorder(new TitledBorder(null, "Seleccione Producto", TitledBorder.LEADING, TitledBorder.TOP, null, null));
cboProducto.setBounds(5, 59, 246, 52);
contentPane.add(cboProducto);

txtCantidad = new JTextField();


txtCantidad.setBorder(new TitledBorder(null, "Ingrese Cantidad", TitledBorder.LEADING, TitledBorder.TOP, null, null));
txtCantidad.setBounds(261, 59, 132, 52);
contentPane.add(txtCantidad);
txtCantidad.setColumns(10);

JButton btnProcesar = new JButton("PROCESAR");


btnProcesar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//Obtener la información del formulario
String producto=cboProducto.getSelectedItem().toString();
int cantidad=Integer.parseInt(txtCantidad.getText());

//Realizar cálculos
double precio=0;
if (producto.equals("Lavadora"))
precio=1500;
else if(producto.equals("Cocina"))

Elaborado por: Ing. Manuel Torres.


Java Foundations

precio=1200;
else if(producto.equals("Refrigeradora"))
precio=3500;
else if(producto.equals("Lustradora"))
precio=750;

double subtotal = precio*cantidad;


double descuento = subtotal*0.10;
double neto = subtotal-descuento;

//Imprimir
moR.clear();
moR.addElement("Producto: "+producto);
moR.addElement("Precio: S/"+String.format("%.2f",precio));
moR.addElement("Cantidad: "+cantidad);
moR.addElement("------------------------------------");
moR.addElement("Subtotal S/: "+subtotal);
moR.addElement("Descuento S/: "+descuento);
moR.addElement("Neto S/: "+neto);
}
});
btnProcesar.setBackground(new Color(240, 230, 140));
btnProcesar.setBounds(403, 82, 109, 29);
contentPane.add(btnProcesar);

JButton btnCancelar = new JButton("CANCELAR");


btnCancelar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
cboProducto.setSelectedIndex(0);
txtCantidad.setText("");
moR.clear();
}
});
btnCancelar.setBounds(403, 59, 109, 23);
contentPane.add(btnCancelar);

JButton btnSalir = new JButton("SALIR");


btnSalir.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
btnSalir.setForeground(new Color(255, 255, 255));
btnSalir.setBackground(new Color(255, 0, 0));
btnSalir.setBounds(5, 265, 89, 23);
contentPane.add(btnSalir);

//Llenar el cuadro combinado de productos


cboProducto.addItem("Lavadora");
cboProducto.addItem("Cocina");
cboProducto.addItem("Refrigeradora");
cboProducto.addItem("Lustradora");
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(5, 122, 507, 132);
contentPane.add(scrollPane);

JList lstR = new JList();


scrollPane.setViewportView(lstR);
lstR.setModel(moR);
}
}

Elaborado por: Ing. Manuel Torres.


Java Foundations

CASOS PROPUESTOS
Caso 01: Pago de Vendedores

Una empresa de venta de productos al por mayor paga a sus vendedores un sueldo básico mensual
de S/. 500.00. El salario es igual al sueldo básico más una comisión, que es igual al 15% del monto
total vendido que realice dicho vendedor en ese mes. Por ley, todo vendedor se somete a un
descuento del 12.5%. Implemente una aplicación en Java que permita calcular el monto de la
comisión, salario, descuento y el salario neto de un vendedor.

Pruebe con los siguientes valores:

CAMPOS PRUEBA 1 PRUEBA 2


NOMBRE DEL VENDEDOR Marisol Diaz Zambrano Guadalupe Acosta Ferrer
MONTO VENDIDO 75000 25000

COMISION S/. 11200.00 S/. 3750.00


SALARIO S/. 11750.00 S/. 4250.00
DESCUENTO S/. 1468.75 S/. 531.25
NETO S/. 10281.25 S/. 3718.75

Caso 02: Venta de Piezas de Auto

Diseñe un programa en java, para una empresa de ventas de piezas de automóviles, que determine
el precio al que debe vender una pieza considerando un porcentaje de ganancia. Para ello se leerán
el precio de compra de la pieza y el porcentaje de ganancia que desea obtener la empresa en tanto
por ciento.

Pruebe con los siguiente valores:


Nombre de la pieza Faros laterales Parabrisa
Precio de Lista S/. 600.00 S/. 250.00
Porcentaje de ganancia 20% 15%

Monto de ganancia S/. 120.00 S/. 37.50


Precio al publico S/. 720.00 S/. 287.50

Elaborado por: Ing. Manuel Torres.

También podría gustarte