Sei sulla pagina 1di 3

Solucin Examen Terico 3 2014 II

Clase Producto
public class Producto {
// Atributos privados
private int
codigo, stock;
private String descripcion;
private double precio;
// Constructor
public Producto(int codigo, String descripcion, int stock, double precio) {
this.codigo = codigo;
this.descripcion = descripcion;
this.precio = precio;
this.stock = stock;
}
// Mtodos de acceso: set/get
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public void setDescripcion(String descripcion) {
this.descripcion = descripcion;
}
public void setPrecio(double precio) {
this.precio = precio;
}
public void setStock(int stock) {
this.stock = stock;
}
public int getCodigo() {
return codigo;
}
public String getDescripcion() {
return descripcion;
}
public double getPrecio() {
return precio;
}
public int getStock() {
return stock;
}
}

Clase ArregloProductos
import java.util.ArrayList;
public class ArregloProductos {
// Atributo privado
private ArrayList <Producto> pro;
// Constructor
public ArregloProductos() {
pro = new ArrayList <Producto> ();
adicionar(new Producto(123,"Leche",190,17.58));
adicionar(new Producto(456,"Arroz",5,123.45));
adicionar(new Producto(789,"Azcar",19,15.33));
adicionar(new Producto(302,"Jamn",130,180.25));
adicionar(new Producto(208,"Atn",5,123.45));
adicionar(new Producto(417,"Trigo",200,11.88));
adicionar(new Producto(551,"Sal",5,16.52));
adicionar(new Producto(916,"Kion",180,13.42));
}
// Operaciones
public void adicionar(Producto p) {
pro.add(p);
}
public int tamao() {
return pro.size();
}
public Producto obtener(int i) {
return pro.get(i);
}
public void eliminar(Producto x) {
pro.remove(x);
}
public int pregunta1() {
// Mtodo que retorna el nmero de productos cuyo
// stock se encuentra entre 100 y 200 inclusive.
int cantidad = 0;
Producto x;
for (int i=0; i<tamao(); i++) {
x = obtener(i);
if (x.getStock() >= 100 && x.getStock() <= 200)
cantidad++;
}
return cantidad;
}
public void pregunta2(int stock) {
// Mtodo que disminuye el precio unitario en 2.15%
// a aquellos productos que coinciden con un nmero
// de stock recibido como parmetro.
Producto x;
for (int i=0; i<tamao(); i++) {
x = obtener(i);
if (x.getStock() == stock)
x.setPrecio(x.getPrecio() - 0.025*x.getPrecio());
}
}

public void pregunta3() {


// Mtodo que elimina los productos
// cuyo stock es menor a 10.
Producto x;
for (int i=0; i<tamao(); i++) {
x = obtener(i);
if (x.getStock() < 10) {
eliminar(x);
i--;
}
}
}
public int pregunta4() {
// Mtodo que retorna la cantidad de productos cuyo
// precio unitario es superior a 15.5 soles.
int cantidad = 0;
Producto x;
for (int i=0; i<tamao(); i++) {
x = obtener(i);
if (x.getPrecio() > 15.5)
cantidad++;
}
return cantidad;
}
public String pregunta5() {
// Mtodo que retorna la descripcin del primer
// producto cuyo precio unitario es de 123.45 soles.
// En caso no exista el producto retornar null.
Producto x;
for (int i=0; i<tamao(); i++) {
x = obtener(i);
if (x.getPrecio() == 123.45)
return x.getDescripcion();
}
return null;
}
}

Potrebbero piacerti anche