Hola aunque no me ha llegado ninguna sugerencia he descubierto la solución al problema 32.
Os la dejo al que le interese le eche un vistazo
Código:
package ejercicios_refuerzo;
import java.util.Scanner;
public class money
{
public static void main (String args[])
{
//declarar variables
Scanner escribe=new Scanner(System.in);
int num,suma=0;
final int UNO=1,DOS=2,CINCO=5,DIEZ=10,VEINTE=20,CINCUENTA=50;
//recoger variables
System.out.println("escribe dinero");
num=escribe.nextInt();
//ejecutar acción
while (num!=0)
{
suma=0;
switch (num)
{
case 1: System.out.println(UNO); num=0; break;
case 2: System.out.println(DOS); num=0; break;
case 5: System.out.println(CINCO); num=0; break;
case 10: System.out.println(DIEZ); num=0; break;
case 20: System.out.println(VEINTE); num=0; break;
case 50: System.out.println(CINCUENTA); num=0; break;
default:
if (num<5)
{
System.out.println("2");
suma+=2;
num-=suma;
}
else if (num<10)
{
System.out.println("5");
suma+=5;
num-=suma;
}
else if (num<20)
{
System.out.println("10");
suma+=10;
num-=suma;
}
else if (num<50)
{
System.out.println("20");
suma+=20;
num-=suma;
}
else if (num<100)
{
System.out.println("50");
suma+=50;
num-=suma;
}
}
}
}
}