Ejercicio
Dame cambio
Objetivo
Cree un programa de java para devolver el cambio de una compra, utilizando monedas (o billetes) lo más grandes posible. Supongamos que tenemos una cantidad ilimitada de monedas (o billetes) de 100, 50, 20, 10, 5, 2 y 1, y no hay decimales. Por lo tanto, la ejecución podría ser algo como esto:
¿Precio? 44
¿Pagado? 100
Su cambio es 56: 50 5 1
¿Precio? 1
¿Pagado? 100
Su cambio es 99: 50 20 20 5 2 2
Código de Ejemplo
import java.util.*;
public class Main
{
public static void main(String[] args)
{
int price, paid, change;
System.out.print("Price? ");
price = Integer.parseInt(new Scanner(System.in).nextLine());
System.out.print("Paid? ");
paid = Integer.parseInt(new Scanner(System.in).nextLine());
change = paid - price;
System.out.printf("Your change is %1$s: ", change);
while (change > 0)
{
if (change >= 50)
{
System.out.print("50 ");
change -= 50;
}
else
{
if (change >= 20)
{
System.out.print("20 ");
change -= 20;
}
else
{
if (change >= 10)
{
System.out.print("10 ");
change -= 10;
}
else
{
if (change >= 5)
{
System.out.print("5 ");
change -= 5;
}
else
{
if (change >= 2)
{
System.out.print("2 ");
change -= 2;
}
else
{
System.out.print("1 ");
change -= 1;
}
}
}
}
}
}
System.out.println();
}
}