Crear un procedimiento que introduzcas una cantidad y te diga cuantas monedas de cada son.
create or replace
procedure cambio_monedas (importe IN PLS_INTEGER) IS
resto PLS_INTEGER := 0;
quinientos PLS_INTEGER := 0;
doscientos PLS_INTEGER := 0;
cien PLS_INTEGER := 0;
cincuenta PLS_INTEGER := 0;
veinte PLS_INTEGER := 0;
diez PLS_INTEGER := 0;
cinco PLS_INTEGER := 0;
dos PLS_INTEGER := 0;
uno PLS_INTEGER := 0;
BEGIN
quinientos := floor(importe / 500);
resto := importe MOD 500;
doscientos := floor(resto / 200);
resto := resto MOD 200;
cien := floor(resto / 200);
resto := resto MOD 200;
cincuenta := floor(resto / 50);
resto := resto MOD 50;
veinte := floor(resto / 20);
resto := resto MOD 20;
diez := floor(resto / 10);
resto := resto MOD 10;
cinco := floor(resto / 5);
resto := resto MOD 5;
dos := floor(resto / 2);
resto := resto MOD 2;
uno := floor(resto / 1);
resto := resto MOD 1;
DBMS_OUTPUT.PUT_LINE ('BILLETES DE 500: ' || quinientos);
DBMS_OUTPUT.PUT_LINE ('BILLETES DE 200: ' || doscientos);
DBMS_OUTPUT.PUT_LINE ('BILLETES DE 100: ' || cien);
DBMS_OUTPUT.PUT_LINE ('BILLETES DE 50: ' || cincuenta);
DBMS_OUTPUT.PUT_LINE ('BILLETES DE 20: ' || veinte);
DBMS_OUTPUT.PUT_LINE ('BILLETES DE 10: ' || diez);
DBMS_OUTPUT.PUT_LINE ('BILLETES DE 5: ' || cinco);
DBMS_OUTPUT.PUT_LINE ('MONEDAS DE 2: ' || dos);
DBMS_OUTPUT.PUT_LINE ('MONEDAS DE 1: ' || uno);
END;
No hay comentarios:
Publicar un comentario