Está en la página 1de 11

Queremos representar una feria donde sus puestos serán representados por

una matriz donde se irán acomodando las personas para poder vender sus
productos a las personas que asistirán a esta feria, tenemos 2 tipos de
vendedores lo que si tienen puesto (dueños) y ambulantes (no son dueños).

En los puestos tendremos vendedores de ropas, comida, discos, auto, etc


puedes complementar mas servicios de venta si es de tu gusto, de lo que si
nos interesa es que cada persona que ingrese a la feria a vender y sentarse en
un puesto es su id, el precio, producto que vende, si es dueño o no, como
también puedes pensar en que más características puedes aumentarles.

En la feria tu puedes darles las filas y columnas que quieras, la cuestión es que
cumplas ciertas operaciones:

 En las ferias no salen todos a sus puestos, por lo cual se requiere


un método para que ingrese una persona para que pueda vender
su producto en el primer espacio vacío.
 En las probabilidades de estadística es bueno saber cuánto dinero
gira en esta feria.
 Mostrar todos los vendedores.

Para la simplificación de código basura, recomendable utilizar una interfaz para


que todos los vendedores se relaciones solo en uno como también los
métodos, piense en que métodos se deben reutilizar.

(No puede utilizar una super clase) nota: 70%

package Feria;

import java.util.Scanner;

public class Ejecutable {

static Feria feria = new Feria();


static Ayuda p;
static int id=0;

static Scanner entrada = new Scanner(System.in);

public static void main(String[] args) {

while(true){
System.out.println("1: añadir auto");
System.out.println("2: añadir ropas");
System.out.println("3: añadir comidera");
System.out.println("4: añadir disquero");
System.out.println("5: dinero total");
System.out.println("6: mostrar los Vendedores");
System.out.println("7: terminar");

System.out.print("opcion: ");
int opcion = entrada.nextInt();
System.out.println("-----------------------------");
switch(opcion){

case 1:{
id = id +1;

p = new Auto(id, 2000, true, "Mini bus", 2);


feria.agregarVendedor(p);
break;
}
case 2:{
id = id +1;

p = new Ropas(id, 120, false, "Deportivos", 12);


feria.agregarVendedor(p);
break;
}
case 3:{
id = id +1;

p = new Comida(id, 10, true, "pescadera", 100);


feria.agregarVendedor(p);
break;
}
case 4:{
id = id +1;

p = new Discos(id, 2, false, "mp3", 50);


feria.agregarVendedor(p);
break;
}
case 5:{
feria.DineroTotal();
break;
}
case 6:{
feria.mostrarVendedore();
break;
}
case 7:{
System.exit(0);
}

}
}
}
}
public class Feria {

Ayuda[][] puestos;

public Feria() {
puestos = new Ayuda[3][4];
}

public void agregarVendedor(Ayuda e) {


boolean bandera = false;
for (int i = 0; i < puestos.length && !bandera; i++) {
for (int j = 0; j < puestos[0].length && !bandera; j++) {
if (puestos[i][j] == null) {
puestos[i][j] = e;
bandera = true;
}
}
}
if (bandera) {
System.out.println("Vendedor añadido");
} else {
System.out.println("El Vendedor no fue añadido");
}
}

public void DineroTotal() {


double PrecioTotal = 0;
for (int i = 0; i < puestos.length; i++) {
for (int j = 0; j < puestos[0].length; j++) {
if (puestos[i][j] != null) {
PrecioTotal += puestos[i][j].Precio();
}
}
}

System.out.println("El dinero total generado es: " + PrecioTotal);

public void mostrarVendedore() {


for (int i = 0; i < puestos.length; i++) {
for (int j = 0; j < puestos[0].length; j++) {
if(puestos[i][j] != null){
System.out.println("fila "+i+" columna "+j+": "+puestos[i][j].mostrar());
}
}
}

}
package Feria;

/**
*
* @author Coffe!
*/
public class Ropas implements Ayuda{
private int id;
private double precio;
private boolean dueño;
private String producto;
private int cantidad;

public Ropas(int id, double precio, boolean dueño, String producto, int cantidad) {
this.id = id;
this.precio = precio;
this.dueño = dueño;
this.producto = producto;
this.cantidad = cantidad;

calculaRr();
}

public int getId() {


return id;
}

public void setId(int id) {


this.id = id;
}

public double getPrecio() {


return precio;
}

public void setPrecio(double precio) {


this.precio = precio;
}

public boolean isDueño() {


return dueño;
}

public void setDueño(boolean dueño) {


this.dueño = dueño;
}
package Feria;

/**
*
* @author Coffe!
*/
public class Discos implements Ayuda{

private int id;


private double precio;
private boolean dueño;
private String producto;
private int cantidad;

public Discos(int id, double precio, boolean dueño, String producto, int cantidad) {
this.id = id;
this.precio = precio;
this.dueño = dueño;
this.producto = producto;
this.cantidad = cantidad;

calculaRr();
}

public int getId() {


return id;
}

public void setId(int id) {


this.id = id;
}

public double getPrecio() {


return precio;
}

public void setPrecio(double precio) {


this.precio = precio;
}

public boolean isDueño() {


return dueño;
}

public void setDueño(boolean dueño) {


this.dueño = dueño;
}

public String getProducto() {


return producto;
}

public void setProducto(String producto) {


this.producto = producto;
}

public int getCantidad() {


return cantidad;
}

public void setCantidad(int cantidad) {


this.cantidad = cantidad;
}

private void calculaRr(){


setPrecio(getPrecio()*getCantidad());

}
@Override
public String mostrar() {

if(isDueño()){
return "id: "+id+", precio: "+precio+" Puesto: dueño Producto: "+producto+" cantidad:
"+cantidad;
}else{
return "id: "+id+", precio: "+precio+" Puesto: Ambulante: "+producto+" cantidad:
"+cantidad;
}

}
@Override
public double Precio() {
return getPrecio();
}
}
package Feria;

/**
*
* @author Coffe!
*/
public class Comida implements Ayuda{

private int id;


private double precio;
private boolean dueño;
private String producto;
private int cantidad;

public Comida(int id, double precio, boolean dueño, String producto, int cantidad) {
this.id = id;
this.precio = precio;
this.dueño = dueño;
this.producto = producto;
this.cantidad = cantidad;
calculaRr();
}

public int getId() {


return id;
}

public void setId(int id) {


this.id = id;
}

public double getPrecio() {


return precio;
}

public void setPrecio(double precio) {


this.precio = precio;
}

public boolean isDueño() {


return dueño;
}

public void setDueño(boolean dueño) {


this.dueño = dueño;
}

public String getProducto() {


return producto;
}

public void setProducto(String producto) {


this.producto = producto;
}

public int getCantidad() {


return cantidad;
}

public void setCantidad(int cantidad) {


this.cantidad = cantidad;
}

private void calculaRr(){


setPrecio(getPrecio()*getCantidad());
}

@Override
public String mostrar() {

if(isDueño()){
return "id: "+id+", precio: "+precio+" Puesto: dueño Producto: "+producto+" cantidad:
"+cantidad;
}else{
return "id: "+id+", precio: "+precio+" Puesto: Ambulante: "+producto+" cantidad:
"+cantidad;
}

}
@Override
public double Precio() {
return getPrecio();
}
}
package Feria;

/**
*
* @author Coffe!
*/
public class Auto implements Ayuda{

private int id;


private double precio;
private boolean dueño;
private String producto;
private int cantidad;

public Auto(int id, double precio, boolean dueño, String producto, int cantidad) {
this.id = id;
this.precio = precio;
this.dueño = dueño;
this.producto = producto;
this.cantidad = cantidad;

calculaRr();
}
public int getId() {
return id;
}

public void setId(int id) {


this.id = id;
}

public double getPrecio() {


return precio;
}

public void setPrecio(double precio) {


this.precio = precio;
}

public boolean isDueño() {


return dueño;
}

public void setDueño(boolean dueño) {


this.dueño = dueño;
}

public String getProducto() {


return producto;
}

public void setProducto(String producto) {


this.producto = producto;
}

public int getCantidad() {


return cantidad;
}

public void setCantidad(int cantidad) {


this.cantidad = cantidad;
}

private void calculaRr(){


setPrecio(getPrecio()*getCantidad());

}
@Override
public String mostrar() {

if(isDueño()){
return "id: "+id+", precio: "+precio+" Puesto: dueño Producto: "+producto+" cantidad:
"+cantidad;
}else{
return "id: "+id+", precio: "+precio+" Puesto: Ambulante: "+producto+" cantidad:
"+cantidad;
}

}
@Override
public double Precio() {
return getPrecio();
}

}
package Feria;

/**
*
* @author Coffe!
*/
public interface Ayuda {

public String mostrar();

public double Precio();

También podría gustarte