• Lenguaje

    Pascal

  • Descripción

    Una agencia automotriz ofrece planes de crédito y descuentos para la adquisición de las diferentes marcas de automóviles.
    Marca | Descuentos
    Toyota | 20%
    Nissan | 15%
    Mazda | 10%
    - Si el monto final es de $100,000.00 la agencia solicita un 35% de prima y el resto debe cubrirse en 24 mensualidades sin intereses.
    - Si el monto es de un valor máximo de $100,000.00 se requiere una prima del 25% y el resto se debe pagar en 18 mensualidades sin intereses.
    La agencia desea saber:
    - Precio de un automóvil que un determinado cliente elija.
    - El monto de la prima.
    - El número y el monto de las mensualidades que éste debe cubrir.
    - El descuento.
    - El monto final que debe de pagar el comprador.

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
51
52
53
program AgenciaAutomotriz;
uses crt;

var marca : integer;
var descuento, menusalidad, monto_final, numero_de_menusalidades, precio_del_automovil : real;
var prima : real;
begin
    write ('Ingresa el valor de precio del automovil: ');
    readln (precio_del_automovil);
    descuento := 0;
    writeln ('Selecciona el valor de marca.');
    writeln ('    1.- Toyota');
    writeln ('    2.- Nissan');
    writeln ('    3.- Mazda');
    write ('    : ');
    repeat
        readln (marca);
        if (marca<1) or (marca>3) then
            write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
    until (marca>=1) and (marca<=3);
    if marca=1 then
        begin
            descuento := precio_del_automovil*0.2;
        end;
    if marca=2 then
        begin
            descuento := precio_del_automovil*0.15;
        end;
    if marca=3 then
        begin
            descuento := precio_del_automovil*0.1;
        end;
    monto_final := precio_del_automovil-descuento;
    if monto_final>=100000 then
        begin
            prima := monto_final*0.35;
            numero_de_menusalidades := 24;
        end
    else
        begin
            prima := monto_final*0.25;
            numero_de_menusalidades := 18;
        end;
    menusalidad := (monto_final-prima)/numero_de_menusalidades;
    writeln ('Valor de descuento: ', descuento:0:6);
    writeln ('Valor de menusalidad: ', menusalidad:0:6);
    writeln ('Valor de monto final: ', monto_final:0:6);
    writeln ('Valor de numero de menusalidades: ', numero_de_menusalidades:0:6);
    writeln ('Valor de prima: ', prima:0:6);
    writeln;
    write ('Presiona una tecla para terminar . . . ');
    readkey;
end.