Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Verificación de descuento en compra - solución

import java.util.Scanner;

public class Alura {
    public static void main(String[] args) {
        // Declaración de constantes
        final double DESCUENTO_COMPRA = 10;
        final double VALOR_COMPRA_MINIMA = 100.0;

        // Declaración de variables
        Scanner input = new Scanner(System.in);

        // Solicitar datos al cliente
        System.out.println("Ingrese el valor de la compra: ");
        double valorCompra = input.nextDouble();

        // Lógica para aplicar el descuento en compra
        if (valorCompra >= VALOR_COMPRA_MINIMA) {
            double totalDescuento = valorCompra - (valorCompra * DESCUENTO_COMPRA / 100);

            // Imprimir resultados
            System.out.println("Descuento del " + DESCUENTO_COMPRA + "% aplicado.");
            System.out.printf("Nuevo valor:  $%.2f%n" , totalDescuento);
        } else {
            // Imprimir mensaje si no aplica totalDescuento
            System.out.println("Descuento no aplicado.");
            System.out.printf("Valor de la compra: $%.2f%n", valorCompra);
        }
        // Cerrar el scanner
        input.close();
    }
}
1 respuesta

Hola Erick, espero que estés bien

Espero que estés bien. Tu código parece estar bien estructurado para resolver el problema de aplicar un descuento en función del valor de la compra. Has utilizado correctamente las estructuras condicionales if/else para verificar si el valor de la compra es suficiente para aplicar el descuento.

Aquí hay un par de cosas que podrías considerar revisar o ajustar:

  1. Formato de salida: Asegúrate de que el formato de salida coincide con lo que se espera. En tu ejemplo, cuando el descuento no se aplica, el mensaje debería ser "Valor total" en lugar de "Valor de la compra". Puedes cambiar la línea correspondiente a:

    System.out.printf("Valor total: $%.2f%n", valorCompra);
    
  2. Uso de constantes: Has utilizado constantes para el descuento y el valor mínimo de compra, lo cual es una buena práctica. Esto hace que tu código sea más fácil de mantener y entender.

  3. Pruebas: Asegúrate de probar tu programa con diferentes valores de entrada para verificar que el comportamiento sea el esperado en todos los casos.

Aquí tienes un ejemplo de cómo quedaría la parte de impresión cuando el descuento no se aplica:

else {
    // Imprimir mensaje si no aplica totalDescuento
    System.out.println("Descuento no aplicado.");
    System.out.printf("Valor total: $%.2f%n", valorCompra);
}

Espero que estas sugerencias te sean útiles. ¡Bons estudios!