Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
0
respuestas

[Proyecto] asi lo hice yo :D

import modelo.Cliente;
import modelo.Tienda;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

public class Principal {
public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);
    Cliente cliente = new Cliente();
    ArrayList<Tienda> compras = new ArrayList<>();

    System.out.println("Ingresa tu saldo");
    cliente.setSaldo(sc.nextInt());


    int opcion = 1;

    while (cliente.getSaldo() > 0 && opcion == 1) {
        Tienda tienda = new Tienda();


        System.out.println("Ingrese el producto que desea comprar");
        tienda.setCompra(sc.next());

        System.out.println("Ingrese el precio del producto");
        tienda.setPrecio(sc.nextInt());

        if(cliente.comprar(tienda.getPrecio())){
            System.out.println("Compra realizada");
            compras.add((tienda));

        }else {
            System.out.println("sin fondos suficientes");
            break;
        }

        System.out.println("¿Deseas seguir comprando? 1 = si 2 = no");
        opcion = sc.nextInt();

    }

    Collections.sort(compras);
    for (Tienda producto : compras) {
        System.out.println(producto);
    }
    System.out.println("te quedo un total de " + cliente.getSaldo());

}

}

package modelo;

public class Tienda implements Comparable<Tienda>{
    private int precio;
    private String descripcion;
    private int descuento;
    private String compra;

//     @Override
//     public Tienda (int precio, String descripcion){
//         return;
//     }

    public String getDescripcion() {
        return descripcion;
    }

    public int getPrecio() {
        return precio;
    }

    public void setPrecio(int precio) {
        this.precio = precio;
    }

    public String getCompra() {
        return compra;
    }

    public void setCompra(String compra) {
        this.compra = compra;
    }

    public int getDescuento() {
        return descuento;
    }

    public void setDescuento(int descuento) {
        this.descuento = descuento;
    }

    @Override
    public int compareTo(Tienda otra) {
        return this.precio - otra.precio;
    }

    @Override
    public String toString() {
        return compra + " -$" + precio;
    }
}

package modelo;

public class Cliente {
    private int saldo;


    public int getSaldo() {
        return saldo;
    }

    public void setSaldo(int saldo) {
        this.saldo = saldo;
    }

    public boolean comprar(int precio){
        if(saldo >= precio){
            saldo -= precio;
            return true;
        }else {
            return false;
        }

    }



}