-
Lenguaje
Pascal
-
Descripción
Un supermercado ofrece a sus clientes descuentos de acuerdo al monto de compra, como se muestra en el siguiente cuadro:
Compra (S/.) | Descuento (%)
0 - 250 | 3
251 - 500 | 5
501 - más | 10
Dependiendo del rubro de la compra, se le aplica el siguiente impuesto sobre la compra descontada.
Rubro | Impuesto (%)
Comestibles | 15
Juguetes | 20
Construir un algoritmo que calcule el pago total que hará un determinado cliente.
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
42
43
44
45
46
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
42
43
44
45
46
program DescuentosPorElRubroDeLaCompra;
uses crt;
var rubro_de_la_compra : integer;
var descuento, impuesto, monto_de_compra, pago_total : real;
begin
write ('Ingresa el valor de monto de compra: ');
readln (monto_de_compra);
descuento := 0;
if monto_de_compra<=250 then
begin
descuento := monto_de_compra*0.03;
end;
if (monto_de_compra>250) and (monto_de_compra<=500) then
begin
descuento := monto_de_compra*0.05;
end;
if monto_de_compra>500 then
begin
descuento := monto_de_compra*0.1;
end;
writeln ('Selecciona el valor de rubro de la compra.');
writeln (' 1.- Comestibles');
writeln (' 2.- Juguetes');
write (' : ');
repeat
readln (rubro_de_la_compra);
if (rubro_de_la_compra<1) or (rubro_de_la_compra>2) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (rubro_de_la_compra>=1) and (rubro_de_la_compra<=2);
if rubro_de_la_compra=1 then
begin
impuesto := (monto_de_compra-descuento)*0.15;
end
else
begin
impuesto := (monto_de_compra-descuento)*0.2;
end;
pago_total := monto_de_compra-descuento+impuesto;
writeln ('Valor de descuento: ', descuento:0:6);
writeln ('Valor de impuesto: ', impuesto:0:6);
writeln ('Valor de pago total: ', pago_total:0:6);
writeln;
write ('Presiona una tecla para terminar . . . ');
readkey;
end.
uses crt;
var rubro_de_la_compra : integer;
var descuento, impuesto, monto_de_compra, pago_total : real;
begin
write ('Ingresa el valor de monto de compra: ');
readln (monto_de_compra);
descuento := 0;
if monto_de_compra<=250 then
begin
descuento := monto_de_compra*0.03;
end;
if (monto_de_compra>250) and (monto_de_compra<=500) then
begin
descuento := monto_de_compra*0.05;
end;
if monto_de_compra>500 then
begin
descuento := monto_de_compra*0.1;
end;
writeln ('Selecciona el valor de rubro de la compra.');
writeln (' 1.- Comestibles');
writeln (' 2.- Juguetes');
write (' : ');
repeat
readln (rubro_de_la_compra);
if (rubro_de_la_compra<1) or (rubro_de_la_compra>2) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (rubro_de_la_compra>=1) and (rubro_de_la_compra<=2);
if rubro_de_la_compra=1 then
begin
impuesto := (monto_de_compra-descuento)*0.15;
end
else
begin
impuesto := (monto_de_compra-descuento)*0.2;
end;
pago_total := monto_de_compra-descuento+impuesto;
writeln ('Valor de descuento: ', descuento:0:6);
writeln ('Valor de impuesto: ', impuesto:0:6);
writeln ('Valor de pago total: ', pago_total:0:6);
writeln;
write ('Presiona una tecla para terminar . . . ');
readkey;
end.