Skip to content

Commit

Permalink
Merge pull request #17 from Vinceto/developer
Browse files Browse the repository at this point in the history
M4 Arreglos y Archivos D22 - Ejercicio
  • Loading branch information
Andressep authored Jun 8, 2024
2 parents cdb5722 + f551fbd commit 8e40f9d
Show file tree
Hide file tree
Showing 27 changed files with 833 additions and 16 deletions.
20 changes: 19 additions & 1 deletion Vinceto/src/D15/ArrayListMethods.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,20 @@
import java.util.ArrayList;
import java.util.Collections;

/**
* La clase ArrayListMethods proporciona una aplicación que
* maneja una lista de notas y muestra la nota máxima y mínima.
*/
public class ArrayListMethods {

/**
* El método principal que ejecuta la aplicación.
* Inicializa una lista de notas y muestra la nota máxima y mínima.
*
* @param args Un arreglo de cadenas que representa los argumentos de línea de comandos.
*/
public static void main(String[] args) {
// Inicializa una lista de notas con valores predeterminados
ArrayList<Double> notas = new ArrayList<Double>();
notas.add(4.7);
notas.add(2.2);
Expand All @@ -13,13 +25,19 @@ public static void main(String[] args) {
notas.add(4.4);
notas.add(2.6);

// Muestra la nota máxima y mínima de la lista
mostrarNotaMaximaYMinima(notas);
}

/**
* Muestra la nota máxima y mínima de una lista de notas.
*
* @param notas Una lista de números decimales que representan las notas.
*/
public static void mostrarNotaMaximaYMinima(ArrayList<Double> notas) {
double maxNota = Collections.max(notas);
double minNota = Collections.min(notas);
System.out.println("Nota máxima: " + maxNota);
System.out.println("Nota mínima: " + minNota);
}
}
}
26 changes: 24 additions & 2 deletions Vinceto/src/D15/ArrayListOperations.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,46 @@

import java.util.ArrayList;

/**
* La clase ArrayListOperations proporciona una aplicación que
* agrega elementos a una lista de cadenas, verificando si el elemento
* ya existe antes de agregarlo.
*/
public class ArrayListOperations {

/**
* El método principal que ejecuta la aplicación.
* Inicializa una lista de elementos, intenta agregar nuevos elementos
* y muestra mensajes correspondientes.
*
* @param args Un arreglo de cadenas que representa los argumentos de línea de comandos.
*/
public static void main(String[] args) {
// Inicializa una lista de elementos con valores predeterminados
ArrayList<String> elementos = new ArrayList<String>();
elementos.add("mesa");
elementos.add("Refrigerador");
elementos.add("Cocina");
elementos.add("lavadora");

// Intenta agregar nuevos elementos a la lista
agregarElemento(elementos, "Silla");
agregarElemento(elementos, "Cocina"); // Este elemento ya existe
}

/**
* Agrega un elemento a la lista si no existe ya en la lista.
* Muestra un mensaje si el elemento ya existe o si se ha agregado exitosamente.
*
* @param lista Una lista de cadenas que representa los elementos.
* @param elemento El elemento a agregar a la lista.
*/
public static void agregarElemento(ArrayList<String> lista, String elemento) {
if (lista.contains(elemento)) {
System.out.println("Elemento "+elemento+" ya existe");
System.out.println("Elemento " + elemento + " ya existe");
} else {
lista.add(elemento);
System.out.println("Elemento agregado: " + elemento);
}
}
}
}
26 changes: 25 additions & 1 deletion Vinceto/src/D15/ArrayListSearch.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,50 @@

import java.util.ArrayList;

/**
* La clase ArrayListSearch proporciona una aplicación que
* busca y elimina elementos en una lista de nombres.
*/
public class ArrayListSearch {

/**
* El método principal que ejecuta la aplicación.
* Inicializa una lista de nombres, busca y elimina nombres específicos,
* y muestra mensajes correspondientes.
*
* @param args Un arreglo de cadenas que representa los argumentos de línea de comandos.
*/
public static void main(String[] args) {
// Inicializa una lista de nombres con valores predeterminados
ArrayList<String> nombres = new ArrayList<String>();
nombres.add("Pedro");
nombres.add("Juan");
nombres.add("Maria");
nombres.add("Ana");
nombres.add("Luis");

// Busca y elimina los nombres especificados
buscarYEliminar(nombres, "Maria");
buscarYEliminar(nombres, "Carlos");
}

/**
* Busca un nombre en la lista y lo elimina si está presente.
* Muestra un mensaje si el nombre se encuentra o no, y muestra la lista después de la eliminación.
*
* @param lista Una lista de cadenas que representa los nombres.
* @param nombre El nombre a buscar y eliminar en la lista.
*/
public static void buscarYEliminar(ArrayList<String> lista, String nombre) {
if (lista.contains(nombre)) {
System.out.println("Elemento encontrado: " + nombre);
lista.remove(nombre); // Elimina el nombre si se encuentra
} else {
System.out.println("Elemento no encontrado: " + nombre);
lista.removeIf(n -> n.equals(nombre));
System.out.println("Lista después de la eliminación: " + lista);
}
// Muestra la lista después de la eliminación
System.out.println("Lista después de la eliminación: " + lista);
}
}
}
29 changes: 28 additions & 1 deletion Vinceto/src/D15/ArraysIntro.java
Original file line number Diff line number Diff line change
@@ -1,21 +1,48 @@
package D15;

/**
* La clase ArraysIntro proporciona una aplicación que calcula
* el promedio de los sueldos que son mayores a 500000.
*/
public class ArraysIntro {

/**
* El método principal que ejecuta la aplicación.
* Inicializa un arreglo de sueldos y calcula el promedio de
* aquellos sueldos que son mayores a 500000, luego muestra este valor.
*
* @param args Un arreglo de cadenas que representa los argumentos de línea de comandos.
*/
public static void main(String[] args) {
// Inicializa un arreglo de sueldos con valores predeterminados
int[] sueldos = {400000, 760000, 1100000, 650000, 654980, 987300, 700450, 442300};

// Calcula el promedio de los sueldos mayores a 500000
double promedio = calcularPromedioSueldos(sueldos);

// Muestra el promedio de los sueldos mayores a 500000
System.out.println("El promedio de los sueldos mayores a 500000 es: " + promedio);
}

/**
* Calcula el promedio de los sueldos que son mayores a 500000.
*
* @param sueldos Un arreglo de enteros que representa los sueldos.
* @return El promedio de los sueldos mayores a 500000 como un valor de tipo double.
*/
public static double calcularPromedioSueldos(int[] sueldos) {
int suma = 0;
int contador = 0;

// Suma y cuenta los sueldos que son mayores a 500000
for (int sueldo : sueldos) {
if (sueldo > 500000) {
suma += sueldo;
contador++;
}
}

// Retorna el promedio de los sueldos mayores a 500000. Si no hay sueldos mayores a 500000, retorna 0.
return contador == 0 ? 0 : (double) suma / contador;
}
}
}
35 changes: 33 additions & 2 deletions Vinceto/src/D15/MultiplosDeTres.java
Original file line number Diff line number Diff line change
@@ -1,22 +1,53 @@
package D15;

/**
* La clase MultiplosDeTres proporciona una aplicación que
* calcula la suma de los números múltiplos de tres dados
* como argumentos de línea de comandos.
*/
public class MultiplosDeTres {

/**
* El método principal que ejecuta la aplicación.
* Convierte los argumentos de línea de comandos en un arreglo de enteros,
* calcula la suma de los números que son múltiplos de tres,
* y muestra este valor.
*
* @param args Un arreglo de cadenas que representa los argumentos de línea de comandos.
*/
public static void main(String[] args) {
// Inicializa un arreglo de enteros del mismo tamaño que los argumentos de línea de comandos
int[] numeros = new int[args.length];

// Convierte cada argumento de cadena en un entero y lo guarda en el arreglo numeros
for (int i = 0; i < args.length; i++) {
numeros[i] = Integer.parseInt(args[i]);
}

// Calcula la suma de los múltiplos de tres
int sumaMultiplos = suma(numeros);
System.out.println("sumaMultiplos : "+sumaMultiplos);

// Muestra la suma de los múltiplos de tres
System.out.println("Suma de múltiplos de tres: " + sumaMultiplos);
}

/**
* Calcula la suma de los números múltiplos de tres en un arreglo de enteros.
*
* @param numeros Un arreglo de enteros.
* @return La suma de los números múltiplos de tres.
*/
public static int suma(int[] numeros) {
int suma = 0;

// Suma los números que son múltiplos de tres
for (int numero : numeros) {
if (numero % 3 == 0) {
suma += numero;
}
}

// Retorna la suma de los múltiplos de tres
return suma;
}
}
}
49 changes: 47 additions & 2 deletions Vinceto/src/D15/MultiplosDeTresConPromedio.java
Original file line number Diff line number Diff line change
@@ -1,36 +1,81 @@
package D15;

/**
* La clase MultiplosDeTresConPromedio proporciona una aplicación que
* calcula la suma y el promedio de los números múltiplos de tres dados
* como argumentos de línea de comandos.
*/
public class MultiplosDeTresConPromedio {

/**
* El método principal que ejecuta la aplicación.
* Convierte los argumentos de línea de comandos en un arreglo de enteros,
* calcula la suma y el promedio de los números que son múltiplos de tres,
* y muestra estos valores.
*
* @param args Un arreglo de cadenas que representa los argumentos de línea de comandos.
*/
public static void main(String[] args) {
// Inicializa un arreglo de enteros del mismo tamaño que los argumentos de línea de comandos
int[] numeros = new int[args.length];

// Convierte cada argumento de cadena en un entero y lo guarda en el arreglo numeros
for (int i = 0; i < args.length; i++) {
numeros[i] = Integer.parseInt(args[i]);
}

// Calcula la suma de los múltiplos de tres
int sumaMultiplos = suma(numeros);

// Calcula el promedio de los múltiplos de tres
double promedioMultiplos = promedio(numeros);
System.out.println("sumaMultiplos : "+sumaMultiplos);
System.out.println("promedioMultiplos : "+promedioMultiplos);

// Muestra la suma de los múltiplos de tres
System.out.println("Suma de múltiplos de tres: " + sumaMultiplos);

// Muestra el promedio de los múltiplos de tres
System.out.println("Promedio de múltiplos de tres: " + promedioMultiplos);
}

/**
* Calcula la suma de los números múltiplos de tres en un arreglo de enteros.
*
* @param numeros Un arreglo de enteros.
* @return La suma de los números múltiplos de tres.
*/
public static int suma(int[] numeros) {
int suma = 0;

// Suma los números que son múltiplos de tres
for (int numero : numeros) {
if (numero % 3 == 0) {
suma += numero;
}
}

// Retorna la suma de los múltiplos de tres
return suma;
}

/**
* Calcula el promedio de los números múltiplos de tres en un arreglo de enteros.
*
* @param numeros Un arreglo de enteros.
* @return El promedio de los números múltiplos de tres como un valor de tipo double.
*/
public static double promedio(int[] numeros) {
int suma = 0;
int contador = 0;

// Suma y cuenta los números que son múltiplos de tres
for (int numero : numeros) {
if (numero % 3 == 0) {
suma += numero;
contador++;
}
}

// Retorna el promedio de los múltiplos de tres. Si no hay múltiplos de tres, retorna 0.
return contador == 0 ? 0 : (double) suma / contador;
}
}
Loading

0 comments on commit 8e40f9d

Please sign in to comment.