• Lenguaje

    Pascal

  • Descripción

    Supongamos que en una tienda se solicita desarrollar un programa el cual le facilite el proceso de registro y liquidación del valor de cada compra, maneja 4 tipos de clientes, a quienes le cobra según:
    1 Clientes frecuentes: son los que visitan la tienda varias veces al día y compran más de 10 productos en cada visita. A ellos se les otorga el 10% del valor final de la compra.
    2 Cliente social: son personas cuya edad supera los 70 años y compran mínimo 3 productos en cada visita, obtendrá un descuento del 25% sobre el valor de la compra.
    3 Clientes gestantes: son clientes de género femenino, cuya edad no supera los 40 años y son madres de un bebé máximo de 3 años, se les da el 30% de descuento.
    4 Clientes: son personas del común que no se encuentra clasificada en ninguna de las anteriores, ellos pagan el 100% del producto.

    Debe mostrar
    - Valor de la compra.
    - Total de producto comprado.
    - Descuento aplicado.
    - Tipo de cliente.
    - Nombre del 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
47
48
49
50
program RegistroYLiquidacionDeCompras;
uses crt;

var tipo_de_cliente : integer;
var compra, descuento_aplicado, total_de_producto_comprado : real;
var nombre_del_cliente : string;
begin
    write ('Ingresa el nombre del cliente: ');
    readln (nombre_del_cliente);
    write ('Ingresa el valor de compra: ');
    readln (compra);
    writeln ('Selecciona el valor de tipo de cliente.');
    writeln ('    1.- Clientes frecuentes');
    writeln ('    2.- Cliente social');
    writeln ('    3.- Clientes gestantes');
    writeln ('    4.- Clientes');
    write ('    : ');
    repeat
        readln (tipo_de_cliente);
        if (tipo_de_cliente<1) or (tipo_de_cliente>4) then
            write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
    until (tipo_de_cliente>=1) and (tipo_de_cliente<=4);
    descuento_aplicado := 0;
    if tipo_de_cliente=1 then
        begin
            descuento_aplicado := compra*0.1;
            writeln ('Tipo de cliente: Clientes frecuentes');
        end;
    if tipo_de_cliente=2 then
        begin
            descuento_aplicado := compra*0.25;
            writeln ('Tipo de cliente: Cliente social');
        end;
    if tipo_de_cliente=3 then
        begin
            descuento_aplicado := compra*0.3;
            writeln ('Tipo de cliente: Clientes gestantes');
        end;
    if tipo_de_cliente=4 then
        begin
            writeln ('Tipo de cliente: Clientes');
        end;
    total_de_producto_comprado := compra-descuento_aplicado;
    writeln ('Nombre del cliente: ', nombre_del_cliente);
    writeln ('Valor de descuento aplicado: ', descuento_aplicado:0:6);
    writeln ('Valor de total de producto comprado: ', total_de_producto_comprado:0:6);
    writeln;
    write ('Presiona una tecla para terminar . . . ');
    readkey;
end.