OPERADOR MOD y DIV
Publicado por Daniel (2 intervenciones) el 09/10/2012 21:19:45
Hola amigos.
Tengo que hacer un programa de "una caja registradora" y tengo un problema con una parte del código.
El programa ha de darme las vueltas indicando el número de monedas de cada tipo, de forma que éstas sean el mínimo número posible (habiendo monedas de 20, 10, 5 ,2 y 1 centimo).
He hecho lo siguiente. (Aquí sólo calcularía el número de monedas de 20 centimos)
program project11;
VAR
entrega,precio,cambio:REAL;
m20:INTEGER;
begin
WRITELN ('Introduca el precio: ');
READLN (precio);
WRITELN ('Introduzca cantidad entregada: ');
READLN (entrega);
WRITELN ('Cantidad a devolver: ');
cambio:= (entrega-coste);
WRITELN (cambio:4:2);
WRITELN ('Monedas: ');
m20:= cambio DIV 0.2;
WRITELN (m20);
end.
La cosa es que los operadores MOD y DIV sólo operan con números enteros y la variable "cambio" y 0.2 son reales.
Espero que puedan ayudarme con esta duda.
Un saludo y gracias de antemano.
Tengo que hacer un programa de "una caja registradora" y tengo un problema con una parte del código.
El programa ha de darme las vueltas indicando el número de monedas de cada tipo, de forma que éstas sean el mínimo número posible (habiendo monedas de 20, 10, 5 ,2 y 1 centimo).
He hecho lo siguiente. (Aquí sólo calcularía el número de monedas de 20 centimos)
program project11;
VAR
entrega,precio,cambio:REAL;
m20:INTEGER;
begin
WRITELN ('Introduca el precio: ');
READLN (precio);
WRITELN ('Introduzca cantidad entregada: ');
READLN (entrega);
WRITELN ('Cantidad a devolver: ');
cambio:= (entrega-coste);
WRITELN (cambio:4:2);
WRITELN ('Monedas: ');
m20:= cambio DIV 0.2;
WRITELN (m20);
end.
La cosa es que los operadores MOD y DIV sólo operan con números enteros y la variable "cambio" y 0.2 son reales.
Espero que puedan ayudarme con esta duda.
Un saludo y gracias de antemano.
Valora esta pregunta


0