// se importa paquete JOptionPane para dibujar un cuadro de dialogo en pantalla
// que muestre información o para llenar información
import javax.swing.JOptionPane;
import javax.swing.JOptionPane;
public class Main
{
public static void main(String[] args)
{
// creo un objeto de la clase Transportador (Instanciación)
Transportador obj = new Transportador();
// declaro 1 variable de tipo entero llamada cantidad
int cantidad;
// se le pide al usuario que digite la cantidad de roble que llevara el transportador
cantidad = Integer.parseInt(JOptionPane.showInputDialog("Digite cantidad de madera de roble que llevara"));
// se encapsula la cantidad de madera de roble
obj.setCantidadRoble(cantidad);
// se le pide al usuario que digite la cantidad de cedro que llevara el transportador
cantidad = Integer.parseInt(JOptionPane.showInputDialog("Digite cantidad de madera de cedro que llevara"));
// se encapsula la cantidad de madera de cedro
obj.setCantidadCedro(cantidad);
// se le pide al usuario que digite la cantidad de tolua que llevara el transportador
cantidad = Integer.parseInt(JOptionPane.showInputDialog("Digite cantidad de madera de tolua que llevara"));
// se encapsula la cantidad de madera de tolua
obj.setCantidadTolua(cantidad);
// se imprime toda la informacion en pantalla
JOptionPane.showMessageDialog(null,
"Producto: Madera de Roble" + "\n" +
"Cantidad: " + obj.getCantidadRoble() + "\n" +
"Valor unitario: $2000" + "\n" +
"Valor total: $" + obj.valorTotalRoble());
JOptionPane.showMessageDialog(null,
"Producto: Madera de Cedro" + "\n" +
"Cantidad: " + obj.getCantidadCedro() + "\n" +
"Valor unitario: $3000" + "\n" +
"Valor total: $" + obj.valorTotalCedro());
JOptionPane.showMessageDialog(null,
"Producto: Madera de Tolua" + "\n" +
"Cantidad: " + obj.getCantidadTolua() + "\n" +
"Valor unitario: $1500" + "\n" +
"Valor total: $" + obj.valorTotalTolua());
JOptionPane.showMessageDialog(null,
"Subtotal: $" + obj.subtotal() + "\n" +
"Impuesto (19%): $" + obj.valorImpuesto() + "\n" +
"Total a pagar: $" + obj.totalPagar() + "\n");
}
}
public class Transportador
{
// atributos privados de la clase
private int cantidad_roble;
private int cantidad_cedro;
private int cantidad_tolua;
public Transportador()
{
// le asigno valores por defecto a los atributos de la clase en el contructor
cantidad_roble = 0;
cantidad_cedro = 0;
cantidad_tolua = 0;
}
// implementacion de los métodos setters y getters de los atributos de la clase
public void setCantidadRoble(int val)
{
cantidad_roble = val;
}
public int getCantidadRoble()
{
return cantidad_roble;
}
public void setCantidadCedro(int val)
{
cantidad_cedro = val;
}
public int getCantidadCedro()
{
return cantidad_cedro;
}
public void setCantidadTolua(int val)
{
cantidad_tolua = val;
}
public int getCantidadTolua()
{
return cantidad_tolua;
}
// métodos para calcular el valor total de cada madera
public int valorTotalRoble()
{
// se retorna la cantidad de madera de roble y se multiplica por 2000
return getCantidadRoble() * 2000;
}
public int valorTotalCedro()
{
// se retorna la cantidad de madera de cedro y se multiplica por 3000
return getCantidadCedro() * 3000;
}
public int valorTotalTolua()
{
// se retorna la cantidad de madera de tolua y se multiplica por 1500
return getCantidadTolua() * 1500;
}
// método para calcular el subtotal de la venta
public int subtotal()
{
// el subtotal es el valor total de la madera por el valor unitario de ella, sumada con el resultado de las demas...
return valorTotalRoble() + valorTotalCedro() + valorTotalTolua();
}
public double valorImpuesto()
{
// la formula para calcular el valor del impuesto es: el subtotal
// por el porcentaje del impuesto en este caso sera 19% valor del IVA
return subtotal() * 0.19;
}
// método para calcular el total
public double totalPagar()
{
// se retorna el valor del subtotal mas el valor del impuesto
return subtotal() + valorImpuesto();
}
}