• Lenguaje

    PSeInt (Pseudocódigo)

  • Descripción

    Un cliente ordena cierta cantidad de hojas de hielo seco, viguetas y armazones; las hojas de hielo seco tienen un 20% de descuento y las viguetas un 15%, sobre el total de cada una. Los datos que se tiene por cada tipo de artículo son: la cantidad pedida y el precio (hojas precio=2.75, viguetas precio=4, armazones precio=6.75). Además si se paga de contado tiene un descuento de 7% sobre el monto total. El algoritmo debe imprimir el costo total de la orden, en caso de ser efectivo de mostrar el costo inicial, el descuento y el monto final. Recuerde los datos ingresados no pueden ser negativos.
    La solución debe procesar las ordenes de 10 clientes y mostrar la siguiente información:
    a) ¿Cuántos clientes pagaron en efectivo?
    b) ¿Cuál es la suma total de todas las ventas?
    c) ¿Cuántos productos se vendieron de cada tipo?

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
54
55
56
57
58
59
60
61
62
63
64
65
66
Proceso HojasDeHieloSecoViguetasYArmazonesPara10
    armazones_vendidos <- 0;
    clientes_en_efectivo <- 0;
    hojas_vendidas <- 0;
    viguetas_vendidas <- 0;
    suma_total <- 0;
    Para i<-1 Hasta 10 Con Paso 1 Hacer
        Escribir "PROCESO ", i;
        Escribir Sin Saltar "Ingresa el valor de cantidad de armazones:";
        Leer cantidad_de_armazones;
        Escribir Sin Saltar "Ingresa el valor de cantidad de hojas:";
        Leer cantidad_de_hojas;
        Escribir Sin Saltar "Ingresa el valor de cantidad de viguetas:";
        Leer cantidad_de_viguetas;
        Escribir "Selecciona el valor de tipo de pago.";
        Escribir "    1.- Al contado";
        Escribir "    2.- A crédito";
        Escribir Sin Saltar "    :";
        Repetir
            Leer tipo_de_pago;
            Si tipo_de_pago<1 O tipo_de_pago>2 Entonces
                Escribir Sin Saltar "Valor incorrecto. Ingrésalo nuevamente.: ";
            FinSi
        Hasta Que tipo_de_pago>=1 Y tipo_de_pago<=2;
        Escribir "Selecciona el valor de forma de pago.";
        Escribir "    1.- Efectivo";
        Escribir "    2.- Tarjeta";
        Escribir Sin Saltar "    :";
        Repetir
            Leer forma_de_pago;
            Si forma_de_pago<1 O forma_de_pago>2 Entonces
                Escribir Sin Saltar "Valor incorrecto. Ingrésalo nuevamente.: ";
            FinSi
        Hasta Que forma_de_pago>=1 Y forma_de_pago<=2;
        precio_por_hoja <- 2.75;
        precio_por_vigueta <- 4;
        precio_por_armazon <- 6.75;
        costo_inicial <- cantidad_de_hojas*precio_por_hoja+cantidad_de_viguetas*precio_por_vigueta+cantidad_de_armazones*precio_por_armazon;
        descuento <- cantidad_de_hojas*precio_por_hoja*0.2+cantidad_de_viguetas*precio_por_vigueta*0.15;
        monto_total <- costo_inicial-descuento;
        Si tipo_de_pago = 1 Entonces
            descuento <- descuento+monto_total*0.07;
        FinSi
        monto_final <- costo_inicial-descuento;
        Si forma_de_pago = 1 Entonces
            clientes_en_efectivo <- clientes_en_efectivo+1;
        FinSi
        suma_total <- suma_total+monto_final;
        armazones_vendidos <- armazones_vendidos+cantidad_de_armazones;
        hojas_vendidas <- hojas_vendidas+cantidad_de_hojas;
        viguetas_vendidas <- viguetas_vendidas+cantidad_de_viguetas;
        Escribir "Valor de costo inicial: ", costo_inicial;
        Escribir "Valor de descuento: ", descuento;
        Escribir "Valor de monto final: ", monto_final;
        Escribir "Valor de monto total: ", monto_total;
        Escribir "Valor de precio por armazon: ", precio_por_armazon;
        Escribir "Valor de precio por hoja: ", precio_por_hoja;
        Escribir "Valor de precio por vigueta: ", precio_por_vigueta;
        Escribir "";
    FinPara
    Escribir "Valor de armazones vendidos: ", armazones_vendidos;
    Escribir "Valor de clientes en efectivo: ", clientes_en_efectivo;
    Escribir "Valor de hojas vendidas: ", hojas_vendidas;
    Escribir "Valor de viguetas vendidas: ", viguetas_vendidas;
    Escribir "Valor de suma total: ", suma_total;
FinProceso