Advertisement
FacuValverdi

EdD-TP2-PTO6.Repartidor de Gaseosas

Sep 24th, 2022 (edited)
950
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.35 KB | None | 0 0
  1. package tp2;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.Scanner;
  5. import java.util.Stack;
  6.  
  7. public class PuntoDeEntrega {
  8.     private String nombreDelPueblo;
  9.     private String nombreDelNegocio;
  10.     private int cantDeFardos;
  11.     private float montoDeLaDeuda=0;
  12.     private String estadoDeuda;
  13.     private int precio=300;
  14.     private int unFardo=6;
  15.    
  16.    
  17.    
  18.     public PuntoDeEntrega(String pueblo,String negocio, int fardos, float monto, String estado) {
  19.         nombreDelPueblo=pueblo;
  20.         nombreDelNegocio=negocio;
  21.         cantDeFardos=fardos;
  22.         montoDeLaDeuda+=monto;
  23.         estadoDeuda=estado;
  24.     }
  25.    
  26.     public PuntoDeEntrega() {
  27.        
  28.     }
  29.     public float monto(int cantDeFardos) {
  30.         return cantDeFardos*precio;
  31.     }
  32.     public float cantDeGaseosas() {
  33.         return this.cantDeFardos*unFardo;
  34.     }
  35.    
  36.     public String getNombreDelPueblo() {
  37.         return nombreDelPueblo;
  38.     }
  39.     public void setNombreDelPueblo(String nombreDelPueblo) {
  40.         this.nombreDelPueblo = nombreDelPueblo;
  41.     }
  42.     public String getNombreDelNegocio() {
  43.         return nombreDelNegocio;
  44.     }
  45.     public void setNombreDelNegocio(String nombreDelNegocio) {
  46.         this.nombreDelNegocio = nombreDelNegocio;
  47.     }
  48.     public int getCantDeFardos() {
  49.         return cantDeFardos;
  50.     }
  51.     public void setCantDeFardos(int cantDeFardos) {
  52.         this.cantDeFardos = cantDeFardos;
  53.     }
  54.     public float getMontoDeLaDeuda() {
  55.         return montoDeLaDeuda;
  56.     }
  57.     public void setMontoDeLaDeuda(float montoDeLaDeuda) {
  58.         this.montoDeLaDeuda = montoDeLaDeuda;
  59.     }
  60.     public String isEstadoDeuda() {
  61.         return estadoDeuda;
  62.     }
  63.     public void setEstadoDeuda(String estadoDeuda) {
  64.         this.estadoDeuda = estadoDeuda;
  65.     }
  66.  
  67.     public static void registrarPedidos(Stack<PuntoDeEntrega> pila) {
  68.         Scanner lectura= new Scanner(System.in);
  69.         int aux=0;
  70.         System.out.println("Cantidad de pueblos a recorrer: ");
  71.         int N= lectura.nextInt();
  72.         lectura.nextLine();
  73.         for(int i=0;i<N;i++) {
  74.             PuntoDeEntrega pedido= new PuntoDeEntrega();
  75.             System.out.println("-Pueblo "+(i+1)+"-");
  76.             System.out.println("Ingrese nombre del pueblo: ");
  77.             pedido.setNombreDelPueblo(lectura.nextLine());
  78.             System.out.println("Ingrese nombre del negocio: ");
  79.             pedido.setNombreDelNegocio(lectura.nextLine());
  80.             System.out.println("Ingrese cantidad de fardos: ");
  81.             pedido.setCantDeFardos(lectura.nextInt());
  82.             pedido.setMontoDeLaDeuda(pedido.monto(pedido.cantDeFardos));
  83.             System.out.println("Monto de la deuda: "+pedido.getMontoDeLaDeuda());
  84.             lectura.nextLine();
  85.             System.out.println("Estado de la deuda : ");
  86.             pedido.setEstadoDeuda(lectura.nextLine());
  87.             pila.push(pedido); 
  88.         }
  89.        
  90.     }
  91.     public static void mostrarPueblosRepartidor(ArrayList<PuntoDeEntrega> pedidos) {
  92.         PuntoDeEntrega auxp= new PuntoDeEntrega();
  93.         System.out.println("---PUEBLOS RECORRIDOS POR EL REPARTIDOR---");
  94.         float total=0;
  95.         int j=pedidos.size();
  96.         for(int i=0;i<pedidos.size();i++) {
  97.             auxp=pedidos.get(i);   
  98.             System.out.println("-Pedido "+j);
  99.             System.out.println("PUEBLO: "+auxp.getNombreDelPueblo());
  100.             System.out.println("Nombre del Negocio: "+auxp.getNombreDelNegocio()+". Monto de la deuda: "+auxp.getMontoDeLaDeuda());
  101.             total+=auxp.getMontoDeLaDeuda();
  102.             j--;
  103.         }
  104.         System.out.println("El monto TOTAL de la deuda es: "+total);
  105. }
  106.     public static void mostrarPueblosPreventista(Stack<PuntoDeEntrega> pedidos) {
  107.         PuntoDeEntrega ped= new PuntoDeEntrega();
  108.         int cantidadTotalDeFardos=0;
  109.         System.out.println("---PUEBLOS REGISTRADOS POR EL PREVENTISTA---");
  110.         ArrayList <PuntoDeEntrega> pedidosPreventista =new ArrayList<PuntoDeEntrega>();
  111.         for(int i=0;i<=pedidos.size();i++) {
  112.             pedidosPreventista.add(pedidos.pop()); 
  113.         }
  114.         int j=0;
  115.         for(int i=pedidosPreventista.size()-1;i>=0;i--) {
  116.             ped=pedidosPreventista.get(i); 
  117.             System.out.println("-Pedido "+(j+1));
  118.             System.out.println("PUEBLO "+ped.getNombreDelPueblo());
  119.             System.out.println("Nombre del Negocio: "+ped.getNombreDelNegocio()+". Cantidad de fardos vendidas: "+ped.getCantDeFardos()+". Monto de la deuda: "+ped.montoDeLaDeuda);
  120.             cantidadTotalDeFardos+=ped.getCantDeFardos();
  121.             j++;
  122.         }
  123.         System.out.println("Cantidad total de FARDOS: "+cantidadTotalDeFardos);
  124.         mostrarPueblosRepartidor(pedidosPreventista);
  125.  
  126.     }
  127.     public static void main(String[] args) {
  128.        
  129.         Stack<PuntoDeEntrega> preventista= new Stack<PuntoDeEntrega>();
  130.         System.out.println("----REGISTRO DE PEDIDOS DE GASEOSAS----");
  131.  
  132.         registrarPedidos(preventista);
  133.         mostrarPueblosPreventista(preventista);
  134.     }
  135. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement