-
Lenguaje
Pascal
-
Descripción
Un supermercado ha implementado una promoción de descuento de las personas que van a pagar en caja. Si saca una bolita roja tendrá un descuento sobre el importe comprado del 10%, si es amarilla del 5% y si es blanca no tendrá descuento. Desarrollar el programa mientras se desee continuar. Mostrar lo siguiente:
- Cuánto pagará cada persona.
- Cuántas personas no tuvieron ningún descuento.
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
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
program DescuentoPorBolitaRojaAmarillaBlanca2;
uses crt;
var bolita, personas_sin_descuento : integer;
var cantidad_a_pagar, descuento, importe_de_la_compra : real;
var tecla_repetir : char;
begin
randomize;
personas_sin_descuento := 0;
repeat
clrscr;
write ('Ingresa el valor de importe de la compra: ');
readln (importe_de_la_compra);
descuento := 0;
bolita := random(3);
if bolita=0 then
begin
descuento := importe_de_la_compra*0.1;
writeln ('Bolita roja');
end;
if bolita=1 then
begin
descuento := importe_de_la_compra*0.05;
writeln ('Bolita amarilla');
end;
if bolita=2 then
begin
writeln ('Bolita blanca');
personas_sin_descuento := personas_sin_descuento+1;
end;
cantidad_a_pagar := importe_de_la_compra-descuento;
writeln ('Valor de bolita: ', bolita:0:6);
writeln ('Valor de cantidad a pagar: ', cantidad_a_pagar:0:6);
writeln ('Valor de descuento: ', descuento:0:6);
writeln;
write (#168'Deseas repetir el proceso? (S/N): ');
repeat
tecla_repetir := readkey;
until (tecla_repetir = 's') or (tecla_repetir = 'n') or (tecla_repetir = 'S') or (tecla_repetir = 'N');
until (tecla_repetir <> 's') and (tecla_repetir <> 'S');
writeln ('Valor de personas sin descuento: ', personas_sin_descuento);
write ('Presiona una tecla para terminar . . . ');
readkey;
end.
uses crt;
var bolita, personas_sin_descuento : integer;
var cantidad_a_pagar, descuento, importe_de_la_compra : real;
var tecla_repetir : char;
begin
randomize;
personas_sin_descuento := 0;
repeat
clrscr;
write ('Ingresa el valor de importe de la compra: ');
readln (importe_de_la_compra);
descuento := 0;
bolita := random(3);
if bolita=0 then
begin
descuento := importe_de_la_compra*0.1;
writeln ('Bolita roja');
end;
if bolita=1 then
begin
descuento := importe_de_la_compra*0.05;
writeln ('Bolita amarilla');
end;
if bolita=2 then
begin
writeln ('Bolita blanca');
personas_sin_descuento := personas_sin_descuento+1;
end;
cantidad_a_pagar := importe_de_la_compra-descuento;
writeln ('Valor de bolita: ', bolita:0:6);
writeln ('Valor de cantidad a pagar: ', cantidad_a_pagar:0:6);
writeln ('Valor de descuento: ', descuento:0:6);
writeln;
write (#168'Deseas repetir el proceso? (S/N): ');
repeat
tecla_repetir := readkey;
until (tecla_repetir = 's') or (tecla_repetir = 'n') or (tecla_repetir = 'S') or (tecla_repetir = 'N');
until (tecla_repetir <> 's') and (tecla_repetir <> 'S');
writeln ('Valor de personas sin descuento: ', personas_sin_descuento);
write ('Presiona una tecla para terminar . . . ');
readkey;
end.