• Lenguaje

    Pascal

  • Descripción

    Suponga que tiene Ud. una tienda y desea registrar las ventas en una computadora. Diseñe un algoritmo que lea por cada cliente el monto de la venta y:
    - Calcule e imprima el IVA
    - Calcule e imprima en total a pagar
    - Lea la cantidad con la que paga el cliente
    - Calcule e imprima el cambio
    - Imprima un cierre diario con el dinero que debe haber en la caja por día

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
program RegistroDeVentasDiario;
uses crt;

var IVA, cambio, cantidad_con_la_que_paga, cierre_diario, fondo_de_caja : real;
var monto_de_la_venta, total_a_pagar : real;
var tecla_repetir : char;
begin
    cierre_diario := 0;
    write ('Ingresa el valor de fondo de caja: ');
    readln (fondo_de_caja);
    repeat
        clrscr;
        write ('Ingresa el valor de cantidad con la que paga: ');
        readln (cantidad_con_la_que_paga);
        write ('Ingresa el valor de monto de la venta: ');
        readln (monto_de_la_venta);
        IVA := monto_de_la_venta*0.16;
        total_a_pagar := monto_de_la_venta+IVA;
        cambio := cantidad_con_la_que_paga;
        cierre_diario := cierre_diario+total_a_pagar;
        writeln ('Valor de IVA: ', IVA:0:6);
        writeln ('Valor de cambio: ', cambio:0:6);
        writeln ('Valor de total a pagar: ', total_a_pagar: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');
    cierre_diario := cierre_diario+fondo_de_caja;
    writeln ('Valor de cierre diario: ', cierre_diario:0:6);
    write ('Presiona una tecla para terminar . . . ');
    readkey;
end.