• Lenguaje

    C

  • Descripción

    Un cliente hace un pedido de libros, cuadernos y revistas; los libros tienen un descuento del 22%, las revistas del 16% y los cuadernos del 10%. Los datos que se ingresan para cada tipo de artículos son: la cantidad pedida, él precio unitario y el tipo de pago. Si el pago es al contado, se tiene un descuento de 6%, en cualquiera de los casos. Hacer un algoritmo que calcule e imprima el costo total del pedido considerado el tipo de pago.

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
#include <stdio.h>
#include <stdlib.h>

int main (void)
{
    int tipo_de_pago;
    float cantidad_de_cuadernos, cantidad_de_libros, cantidad_de_revistas, descuento, precio_por_cuaderno;
    float precio_por_libro, precio_por_revista, subtotal, total;
    printf ("Ingresa el valor de cantidad de cuadernos: ");
    scanf ("%f", &cantidad_de_cuadernos);
    (void) getchar ();
    printf ("Ingresa el valor de cantidad de libros: ");
    scanf ("%f", &cantidad_de_libros);
    (void) getchar ();
    printf ("Ingresa el valor de cantidad de revistas: ");
    scanf ("%f", &cantidad_de_revistas);
    (void) getchar ();
    printf ("Ingresa el valor de precio por cuaderno: ");
    scanf ("%f", &precio_por_cuaderno);
    (void) getchar ();
    printf ("Ingresa el valor de precio por libro: ");
    scanf ("%f", &precio_por_libro);
    (void) getchar ();
    printf ("Ingresa el valor de precio por revista: ");
    scanf ("%f", &precio_por_revista);
    (void) getchar ();
    subtotal=cantidad_de_libros*precio_por_libro+cantidad_de_revistas*precio_por_revista+cantidad_de_cuadernos*precio_por_cuaderno;
    descuento=cantidad_de_libros*precio_por_libro*0.22+cantidad_de_revistas*precio_por_revista*0.16+cantidad_de_cuadernos*precio_por_cuaderno*0.1;
    printf ("Selecciona el valor de tipo de pago.\n");
    printf ("\t1.- Tarjeta\n");
    printf ("\t2.- Contado\n");
    printf ("\t3.- Vales\n");
    printf ("\t: ");
    do {
        scanf ("%d", &tipo_de_pago);
        (void) getchar ();
        if (tipo_de_pago<1||tipo_de_pago>3)
            printf ("Valor incorrecto. Ingr\202salo nuevamente.: ");
    } while (tipo_de_pago<1||tipo_de_pago>3);
    if(tipo_de_pago==2)
        descuento=descuento+subtotal*0.06;
    total=subtotal-descuento;
    printf ("Valor de descuento: %g\n", descuento);
    printf ("Valor de subtotal: %g\n", subtotal);
    printf ("Valor de total: %g\n", total);
    putchar ('\n');
    system ("pause");
    return EXIT_SUCCESS;
}