-
Lenguaje
Pascal
-
Descripción
Permita a un cajero ingresar precio individual y su cantidad por producto (solicite 2 productos). Luego se le muestra un menú para ingresar el modo de pago. las formas de pago disponibles son:
a) En efectivo.
b) Tarjeta de crédito.
El programa le regresara al cajero:
a) El monto inicial a pagar (sin descuento).
b) Total de descuento aplicado.
c) Monto final a pagar (monto inicial menos decuento).
Tenga en cuenta que si el pago es en efectivo se aplicará un descuento del 20%, si paga con tarjeta de crédito se le aplicará un descuento del 7.28%.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
program MontoYDescuentoPor2Productos;
uses crt;
var modo_de_pago : integer;
var cantidad_producto_1, cantidad_producto_2, descuento, monto_final, monto_inicial : real;
var precio_producto_1, precio_producto_2 : real;
begin
write ('Ingresa el valor de cantidad producto 1: ');
readln (cantidad_producto_1);
write ('Ingresa el valor de cantidad producto 2: ');
readln (cantidad_producto_2);
write ('Ingresa el valor de precio producto 1: ');
readln (precio_producto_1);
write ('Ingresa el valor de precio producto 2: ');
readln (precio_producto_2);
monto_inicial := precio_producto_1*cantidad_producto_1+precio_producto_2*cantidad_producto_2;
writeln ('Selecciona el valor de modo de pago.');
writeln (' 1.- Efectivo');
writeln (' 2.- Tarjeta de cr'#130'dito');
write (' : ');
repeat
readln (modo_de_pago);
if (modo_de_pago<1) or (modo_de_pago>2) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (modo_de_pago>=1) and (modo_de_pago<=2);
if modo_de_pago=1 then
begin
descuento := monto_inicial*0.2;
end
else
begin
descuento := monto_inicial*0.0728;
end;
monto_final := monto_inicial-descuento;
writeln ('Valor de descuento: ', descuento:0:6);
writeln ('Valor de monto final: ', monto_final:0:6);
writeln ('Valor de monto inicial: ', monto_inicial:0:6);
writeln;
write ('Presiona una tecla para terminar . . . ');
readkey;
end.
uses crt;
var modo_de_pago : integer;
var cantidad_producto_1, cantidad_producto_2, descuento, monto_final, monto_inicial : real;
var precio_producto_1, precio_producto_2 : real;
begin
write ('Ingresa el valor de cantidad producto 1: ');
readln (cantidad_producto_1);
write ('Ingresa el valor de cantidad producto 2: ');
readln (cantidad_producto_2);
write ('Ingresa el valor de precio producto 1: ');
readln (precio_producto_1);
write ('Ingresa el valor de precio producto 2: ');
readln (precio_producto_2);
monto_inicial := precio_producto_1*cantidad_producto_1+precio_producto_2*cantidad_producto_2;
writeln ('Selecciona el valor de modo de pago.');
writeln (' 1.- Efectivo');
writeln (' 2.- Tarjeta de cr'#130'dito');
write (' : ');
repeat
readln (modo_de_pago);
if (modo_de_pago<1) or (modo_de_pago>2) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (modo_de_pago>=1) and (modo_de_pago<=2);
if modo_de_pago=1 then
begin
descuento := monto_inicial*0.2;
end
else
begin
descuento := monto_inicial*0.0728;
end;
monto_final := monto_inicial-descuento;
writeln ('Valor de descuento: ', descuento:0:6);
writeln ('Valor de monto final: ', monto_final:0:6);
writeln ('Valor de monto inicial: ', monto_inicial:0:6);
writeln;
write ('Presiona una tecla para terminar . . . ');
readkey;
end.