Buenas tardes programadores quisiera saber si me podrian ayudar con un problema que tengo al tratar de hacer un cajero automatico en pascal lo que tiene que hacer el cajero es solo dar la forma en que va a dar el dinero es decir, 1 de 500 2 de 200 etc, ya he hecho el codigo y aparentemente funciona ya que si ese le pide un valor si entrega la forma en que lo va a dar el unico error que tiene es que si uno le pide 80 pesos nada mas da 1 de 50 y 1 de 20 por si no me entienden les voy a pasar el codigo de mi programa
program cajero;
var
can,a,b,c,d,e,f,g,h,i,j,k:longint;
begin
writeln('que cantidad deseas retirar');
readln(can);
a:=can div 1000;
b:=can mod 1000;
c:=b div 500;
d:=b mod 500;
e:=d div 200;
f:=d mod 200;
g:=f div 100;
h:=f mod 100;
i:=h div 50;
j:=h mod 50;
k:=j div 20;
writeln(a,' de 1000');
writeln(c,' de 500');
writeln(e,' de 200');
writeln(g,' de 100');
writeln(i,' de 50');
writeln(k,' de 20');
readln;
end.
espero que hayan entedido mi problema ya que he intentado unas posibles soluciones con el if pero no me han salido y hasta entorpecen mi programa
gracias