diff --git a/README.md b/README.md index 697a0cd..426ff2b 100644 --- a/README.md +++ b/README.md @@ -56,3 +56,11 @@ You must follow the **SDLC process** to refactor the code: - Once you complete the refactorization, push your changes to your forked repository. - Create a pull request (PR) to the original repository, explaining the improvements you made and how you followed the **SDLC** approach. +## Documentation + +En el ejercicio 1 se modificaron los valores mágicos y se estableció un límite para el estado de las ventas +Además se usaron arreglos para guardar los precios y las cantidades de los productos + +En el ejercicio 2 se estableció un límite de edad válida para verificar que se ingrese un valor positivo +Y otro límite para verificar si se es mayor de edad luego con loa estructura if-else + diff --git a/src/AgeValidation.java b/src/AgeValidation.java index 40e0198..460f683 100644 --- a/src/AgeValidation.java +++ b/src/AgeValidation.java @@ -1,13 +1,28 @@ +import java.util.Scanner; + public class AgeValidation { public static void main(String[] args) { - int age = 18; - - if (age >= 18) { + + //Definición de constantes + final int LEGAL_AGE = 18; + final int AGE_LIMIT = 0; + + //Inicialización del escaner para pedir datos al ususario + try (Scanner scan = new Scanner(System.in)) { + System.out.println("Type your age"); + int age = scan.nextInt(); + + //Validación de la edad + if (age < AGE_LIMIT) { + System.out.println("Invalid Age"); + } + //Comprobar el caso correspondiente y salida de texto + else if (age >= LEGAL_AGE) { System.out.println("Access granted"); - } - - if (age < 18) { + } + else { System.out.println("Access denied"); + } } } } diff --git a/src/Store.java b/src/Store.java index 2a4729a..a785198 100644 --- a/src/Store.java +++ b/src/Store.java @@ -1,19 +1,39 @@ +import java.util.Scanner; + public class Store { public static void main(String[] args) { - int p1 = 15; - int p2 = 10; - int p3 = 5; - int total1 = p1 * 2; - int total2 = p2 * 3; - int total3 = p3 * 4; + //Definición de constantes + final int SALES_TRESHOLD = 100; + final int MAX_PRODUCTS = 3; + + //Definición de los arrelos con precios y cantitades + int[] prices = {15, 10, 5}; + int[] quantities = new int[3]; + + //Se pide la cantidad de cada producto y se almacena en una matriz + try (Scanner scan = new Scanner(System.in)) { + for (int i = 0; i < MAX_PRODUCTS; i++) { + System.out.printf("Ingresa la cantidad del producto %s con valor de: $%s%n", i+1, prices[i]); + quantities[i] = scan.nextInt(); + } + //Inicialización del contador con el total de ventas + int totalSales = 0; - int totalSales = total1 + total2 + total3; + //Ciclo para realizar las operaciones entre arreglos + for (int i = 0; i < MAX_PRODUCTS; i++) { + totalSales += prices[i] * quantities[i]; + } - if (totalSales > 50) { - System.out.println("Good sales performance"); - } else { - System.out.println("Low sales performance"); + System.out.println("\nEl total de las ventas fué de: $" + totalSales); + //Verificación y salida de texto + if (totalSales >= SALES_TRESHOLD) { + System.out.println("Buen desempeño de ventas"); + } + else { + System.out.println("Mal desempeño de ventas"); + } } + } -} +} \ No newline at end of file diff --git a/src/TaxCalculation.java b/src/TaxCalculation.java index 3417866..4f80336 100644 --- a/src/TaxCalculation.java +++ b/src/TaxCalculation.java @@ -1,15 +1,56 @@ +import java.util.Scanner; + public class TaxCalculation { public static void main(String[] args) { - double productPrice1 = 100; - double productPrice2 = 200; - double tax1 = productPrice1 * 0.15; - double tax2 = productPrice2 * 0.10; - double totalTax = tax1 + tax2; + + final int TAX_THRESHOLD = 50; + final double TAX_RATE_HIGH = 0.10; + final double TAX_RATE_LOW = 0.15; + + int[] products; + double[] taxes; + double taxesSum = 0; - if (totalTax > 50) { - System.out.println("High total tax: " + totalTax); - } else { - System.out.println("Low tax"); + try (Scanner scan = new Scanner(System.in)) { + + System.out.println("Ingresa la cantidad de productos"); + int productsAmount = scan.nextInt(); + products = new int[productsAmount]; + taxes = new double[productsAmount]; + + for (int i = 0; i < products.length; i++) { + System.out.println("Ingresa el precio del producto " + (i+1)); + products[i] = scan.nextInt(); + + int taxOption; + + do { + System.out.println("\n1 = impuesto es alto (15%)"); + System.out.println("2 = impuesto es bajo (10%)"); + taxOption = scan.nextInt(); + + switch (taxOption) { + case 1: + taxes[i] = TAX_RATE_HIGH; + break; + case 2: + taxes[i] = TAX_RATE_LOW; + break; + default: + System.out.println("Opción inválida"); + break; + } + } while ((taxOption != 1) && (taxOption != 2)); + + taxesSum += products[i] * taxes[i]; + } + System.out.println("El valor de los impuestos es de: $" + taxesSum); + if (taxesSum > TAX_THRESHOLD){ + System.out.println("El impuesto sobrepasa el umbral"); + } + else { + System.out.println("El impuesto no sobrepasa el umbral"); + } } } }