0% encontró este documento útil (0 votos)
73 vistas16 páginas

Java Ejercicios Tarea Continuacion

El documento describe un ejercicio de programación para implementar un sistema de gestión de productos y eventos en Java, incluyendo clases, métodos, constructores y funcionalidades como agregar productos, mostrar información, buscar por fecha y lugar.

Cargado por

rodriguezivoluis
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
73 vistas16 páginas

Java Ejercicios Tarea Continuacion

El documento describe un ejercicio de programación para implementar un sistema de gestión de productos y eventos en Java, incluyendo clases, métodos, constructores y funcionalidades como agregar productos, mostrar información, buscar por fecha y lugar.

Cargado por

rodriguezivoluis
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 16

Nombre: Ivo Luis Rodriguez

Matricula: 2023-1197
Programacion 1

Java ejercicios. Programación 1 freidy


Ejercicio: Sistema de gestión de productos
1. Clase "Producto": contiene información sobre el producto, como nombre,
precio, cantidad, etc.
2. Constructor: recibe el nombre y el precio del producto como parámetros.
3. Método "agregarCantidad": recibe una cantidad como parámetro y la
agrega a la cantidad actual del producto.
4. Método "vender": recibe una cantidad como parámetro y la retira de la
cantidad actual del producto.
5. Método "mostrarInformacion": imprime la información del producto,
incluyendo el nombre, precio y cantidad actual.
6. Crear una variable static para la cantidad de productos creados
7. Agregar los productos por un arraylist
8. Crea un menú de opciones para agregar la cantidad, uno para
vender, y otro para mostrar todos los productos del sistema.
9.

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

public class Producto {


private static int cantidadProducto = 0;
private final String nombre;
private final double precio;
private int cantidad;

public Producto(String nombre, double precio){


this.nombre = nombre;
this.precio = precio;

cantidadProducto++;
}

public static int getCantidadProducto() {


return cantidadProducto;
}

public void agregarCantidad(int cantidad){


this.cantidad += cantidad;
System.out.println("Se le sumo una nueva Cantidad a
nuestro Producto de " + this.nombre );
}

public void vender(int cantidadVenta){


if (cantidadVenta <= this.cantidad){
this.cantidad -= cantidadVenta;
}else {
System.out.println("No hay suficientes unidades de
este producto");
}
}

public void mostrarInformacion(){


System.out.println("Nombre: " + this.nombre + "\nPrecio:
" + this.precio + "\nCantidad:" + this.cantidad);
}

public static Scanner input = new Scanner(System.in);

public static void main(String[] args) {


int opcion;
do {
System.out.println("Menu de Optiones.");
System.out.println("1. Agregar nuevo Producto o
Cantidad\n2. Vender producto \n3. Mostrar informacion de los
productos");
System.out.println("4. Salir");

System.out.println("Elige una opcion: ");


opcion = input.nextInt();

switch (opcion){
case 1:
agregarCantidadProducto();
break;
case 2:
venderProducto();
break;
case 3:

System.out.println("============================================
=======");
for (Producto producto: listaProductos){
producto.mostrarInformacion();
System.out.println("--------------------
--------------------------------");
}
break;

default:
System.out.println("Opcion invalida");
break;
}

}while (opcion != 4);

}
public static ArrayList<Producto> listaProductos = new
ArrayList<>();

public static void agregarCantidadProducto(){

System.out.println("Ingrese el nombre del Producto:");


input.nextLine();
String nombreProducto = input.next().toLowerCase();

System.out.println("Ingrese el Precio: ");


input.nextLine();
double precio = input.nextDouble();

System.out.println("Ingrese la nueva cantidad: ");


input.nextLine();
int cantidad = input.nextInt();

Producto existeProducto = null;

for (Producto producto : listaProductos){


if (producto.nombre.equals(nombreProducto)){
existeProducto = producto;
break;
}
}

if (existeProducto == null){
existeProducto = new Producto(nombreProducto,
precio);
listaProductos.add(existeProducto);
}
existeProducto.agregarCantidad(cantidad);
}

public static void venderProducto(){


System.out.println("Ingrese el nombre de producto a
vender: ");
input.nextLine();
String venderProducto = input.next().toLowerCase();

System.out.println("Cantidad de productos: ");


input.nextLine();
int vender = input.nextInt();

Producto existeProducto = null;

for (Producto producto : listaProductos){


if (producto.nombre.equals(venderProducto)){
existeProducto = producto;
break;
}
}

if (existeProducto != null){
existeProducto.vender(vender);
System.out.println("Se ha vendido con exito");
}
else {
System.out.println("No se encuentra el producto ");
}

}
}
Ejercicio: Sistema de gestión de eventos

1. Clase "Evento": contiene información sobre el evento, como el nombre,


fecha, lugar, etc.
2. Constructor: recibe el nombre y la fecha del evento como parámetros.
3. Constructor sobrecargado: recibe el nombre, fecha y lugar del evento como
parámetros.
4. Método "agregarInvitado": recibe una lista de invitados como parámetros y
los agrega al evento.
5. Método sobrecargado "agregarInvitado": recibe un invitado como parámetro
y lo agrega al evento.
6. Método "mostrarInformacion": imprime la información del evento,
incluyendo el nombre, fecha, lugar y lista de invitados.
7. Variable miembro estatica "cantidadEventos": lleva la cuenta de la cantidad
de eventos creados.
8. Método estatico "obtenerCantidadEventos": devuelve la cantidad de
eventos creados.
9. Crear un arraylist de objetos eventos y añadir varios objetos usando el
constructor y el constructor sobrecargado.
10. Recorrer el arraylist de objetos Eventos usando un for each y llamar el
método mostrarInformacion para ver los Eventos.
11. Mostrar eventos por fechas con el formato que pusiste ejemplo 2/3/2023
12. Mostrar eventos por lugar
13. Mostrar eventos de un lugar especifico
14. Usar un menú de opciones usando un switch para agregar o ver elementos

15. import java.util.ArrayList;


import java.util.Scanner;

public class evento {

// Varibles stacticas y de instancia


private static int cantidadEventos = 0;
private String nombre, fecha, lugar;
private ArrayList<String> Invitado;
public static ArrayList<evento> listaEventos = new
ArrayList<>();

// Constructor
public evento(String nombre, String fecha) {
this.nombre = nombre;
this.fecha = fecha;
this.lugar = "Sin especificar";

this.Invitado = new ArrayList<>();


cantidadEventos++;
}

// constructor sobrecargado
public evento(String nombre, String fecha, String lugar) {
this(nombre,fecha);
this.lugar = lugar;

cantidadEventos++;
}

// metodo con ArrayList para agregar invitados


public void agregarInvitado(ArrayList<String>
listaInvitados){
this.Invitado.addAll(listaInvitados);
}

// metodo Sobrecargado para Agregar invitados


public void agregarInvitado(String invitado) {
this.Invitado.add(invitado);
}

// Metodo mostrar Informacion


public void mostrarInformacion(){
System.out.println("Nombre del evento: "+ this.nombre);
System.out.println("Fecha del evento: "+ this.fecha);
System.out.println("Lugar del evento: "+ this.lugar);

if (this.Invitado.isEmpty()){
System.out.println("No hay invitados");
}else {
for (String invitado : this.Invitado){
System.out.println(" * "+invitado);
}
}
}

// Mostrar eventos por fecha


public static void buscarEventosPorFecha() {
input.nextLine();
System.out.println("Busca el evento por fecha con este
formato (dd-MM-yyyy)");
String fechaBuscada = input.nextLine();

for (evento eventos : listaEventos){


if (eventos.fecha.equalsIgnoreCase(fechaBuscada)){
eventos.mostrarInformacion();
System.out.println("----------------------------
----------");
}else {
System.out.println("Vuelve a intentarlo,
escribio mal la fecha");
buscarEventosPorFecha();
}
}
}

// Mostrar eventos de un lugar

public static void buscarEventosLugares(){


System.out.println("Buscar eventos con lugares
definidos.");

System.out.println("====================================");
for (evento eventos : listaEventos){
if (!eventos.lugar.isEmpty()){
eventos.mostrarInformacion();
System.out.println("----------------------------
----------");
}
}
}

// Mostrar eventos de un lugar especifico


public static void buscarEventosLugarEspecifico(){
input.nextLine();
System.out.println("Busca eventos por lugar en
especifico: ");
String lugarBuscar = input.nextLine();

System.out.println("============================================
===");
for (evento eventos : listaEventos){
if (eventos.lugar.equalsIgnoreCase(lugarBuscar)){
eventos.mostrarInformacion();
System.out.println("----------------------------
---------------");
}
else {
System.err.println("Vuelve a intentarlo,
escribio mal el lugar");
buscarEventosLugarEspecifico();
}
}
}

// Scanner ("input")
public static Scanner input = new Scanner(System.in);

// Funcion main
public static void main(String[] args) {

// Menu de eventos
while (true){
System.out.println("Menu de Eventos :)");
System.out.println("1. Agregar un nuevo evento y
invitados.");
System.out.println("2. Informaciones de los
eventos.");
System.out.println("3. Buscar eventos por fecha");
System.out.println("4. Buscar eventos con lugares
definidos ");
System.out.println("5. Buscar evento con lugares
especificos");
System.out.println("6. Cantidad de eventos");
System.out.println("7. Salir");
System.out.print("Elige una opcion: ");
int opciones = input.nextInt();

switch (opciones){
case 1:
eventoCrear();
break;
case 2:

System.out.println("=================================");
for (evento eventos : listaEventos){
eventos.mostrarInformacion();
System.out.println("--------------------
---------------");
}
break;
case 3:
buscarEventosPorFecha();
break;
case 4:
buscarEventosLugares();
break;
case 5:
buscarEventosLugarEspecifico();
break;
case 6:
obtenerCantidadEventos();
break;
case 7:
System.exit(0);
break;
default:
System.err.println("Error, esta opcion no
esta en el menu");
break;
}
}
}

// funtion para obtener la cantidad de eventos creados.


public static void obtenerCantidadEventos(){
System.out.println("Cantidad de eventos: " +
cantidadEventos);
}

// funtion para crear eventos


public static void eventoCrear(){
input.nextLine();
System.out.println("Ingrese el nombre del evento (o fin
para terminar)");
String nombreEvento = input.nextLine();

System.out.println("Ingrese fecha del evento con este


formato (dd-MM-yyyy)");
String fechaEvento = input.nextLine();

System.out.println("Ingrese lugar del evento (o deje


vacio)");
String lugarEvento = input.nextLine();

evento nuevoEvento = new evento(nombreEvento,


fechaEvento, lugarEvento);

System.out.println("Quieres agregar invitados?? Si/No");


String repuesta = input.nextLine();

if (repuesta.equalsIgnoreCase("si")) {
System.out.println("Escriba nombres de invitados (o
dele a fin para terminar)");
while (true) {
String invitados = input.nextLine();
if (invitados.equalsIgnoreCase("fin")) {
break;
}
nuevoEvento.agregarInvitado(invitados);
}
}
evento.listaEventos.add(nuevoEvento);
}
}
Ejercicio: Sistema de gestión de estudiantes

1. Clase "Estudiante": contiene información sobre el estudiante, como el


nombre, matrícula, carrera, etc.
2. Constructor: recibe el nombre y la matrícula del estudiante como
parámetros.
3. Constructor sobrecargado: recibe el nombre, matrícula y carrera del
estudiante como parámetros.
4. Método "agregarMateria": recibe una lista de materias como parámetros y
las agrega al estudiante.
5. Método sobrecargado "agregarMateria": recibe una materia como
parámetro y la agrega al estudiante.
6. Método "mostrarInformacion": imprime la información del estudiante,
incluyendo el nombre, matrícula, carrera y lista de materias.
7. Variable miembro estatica "cantidadEstudiantes": lleva la cuenta de la
cantidad de estudiantes creados.
8. Método estatico "obtenerCantidadEstudiantes": devuelve la cantidad de
estudiantes creados.
9. Crear un arraylist de objetos Estudiante y añadir varios objetos usando el
constructor y el constructor sobrecargado.
10. Recorrer el arraylist de objetos Estudiante usando un for each y llamar el
metodo mostrarInformacion para ver los estudiantes.

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

public class estudiante {


private static int cantidadEstudiantes;
private String nombre, matricula, carrera;
private ArrayList<String> materias = new ArrayList<>();;

// Constructor
public estudiante(String nombre, String matricula){
this.nombre = nombre;
this.matricula = matricula;
this.carrera = "Sin especificar";
cantidadEstudiantes++;
}

// Constructor sobrecargado
public estudiante(String nombre, String matricula, String
carrera){
this.nombre = nombre;
this.matricula = matricula;
this.carrera = carrera;
cantidadEstudiantes++;
}

// Metodo
public void agregarMateria(ArrayList<String> nuevasMaterias){
this.materias.addAll(nuevasMaterias);
}

// Metodo sobrecargado
public void agregarMateria(String unaMateria){
this.materias.add(unaMateria);
}

// Metodo mostrar Informacion


public void mostrarInformacion(){
System.out.println("Nombre del estudiante: "+ this.nombre);
System.out.println("Matricula del estudiante: "+
this.matricula);
System.out.println("Carrera del estudiante: "+ this.carrera);

if (this.materias.isEmpty()){
System.out.println("Aun no selecciona materias");
}else {
for (String invitado : this.materias){
System.out.println("-Materias: ");
System.out.println(" * "+invitado);
}
}
}

// Metodo stactico para obtener cantidad de estudiantes creados.


public static int obtenerCantidadEstudiantes(){
return cantidadEstudiantes;
}

// scanner

public static Scanner input = new Scanner(System.in);

public static void main(String[] args) {


ArrayList<estudiante> listaEstudiantes = new ArrayList<>();

estudiante nuevoEstudiante = new estudiante("Ivo Rodriguez",


"2023-1197", "Software");
estudiante nuevoEstudiante2 = new estudiante("Miguel Soto",
"2023-2311" );
estudiante nuevoEstudiante3 = new estudiante("Antonio Vargas",
"2023-2345", "Ingenieria");
estudiante nuevoEstudiante4 = new estudiante("Marcos Felix",
"2023-1125");

listaEstudiantes.add(nuevoEstudiante);
listaEstudiantes.add(nuevoEstudiante2);
listaEstudiantes.add(nuevoEstudiante3);
listaEstudiantes.add(nuevoEstudiante4);

nuevoEstudiante.agregarMateria("Programacion");
nuevoEstudiante2.agregarMateria("Quimica");
nuevoEstudiante3.agregarMateria("calculo");
nuevoEstudiante4.agregarMateria("Programacion 3");

System.out.println("=========================================");
for (estudiante infoEstudiante : listaEstudiantes){
infoEstudiante.mostrarInformacion();
System.out.println("--------------------------------------
---------");

También podría gustarte