• Lenguaje

    C

  • Descripción

    Calcule el precio a pagar por la compra de madera. Los datos de entrada son la cantidad de metros cúbicos y el tipo de madera. La madera está clasificada en tres tipos: A, B y C. Si la cantidad a comprar es superior a 30 metros cúbicos, se aplica el siguiente esquema de descuento:
    Tipo de Madera | Descuento (%)
    A | 4%
    B | 8%
    C | 10%

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

int main (void)
{
    int tipo_de_madera;
    float cantidad_de_m3, descuento, precio_por_m3_de_tipo_A, precio_por_m3_de_tipo_B, precio_por_m3_de_tipo_C;
    float subtotal, total;
    printf ("Ingresa el valor de cantidad de m3: ");
    scanf ("%f", &cantidad_de_m3);
    (void) getchar ();
    printf ("Ingresa el valor de precio por m3 de tipo A: ");
    scanf ("%f", &precio_por_m3_de_tipo_A);
    (void) getchar ();
    printf ("Ingresa el valor de precio por m3 de tipo B: ");
    scanf ("%f", &precio_por_m3_de_tipo_B);
    (void) getchar ();
    printf ("Ingresa el valor de precio por m3 de tipo C: ");
    scanf ("%f", &precio_por_m3_de_tipo_C);
    (void) getchar ();
    printf ("Selecciona el valor de tipo de madera.\n");
    printf ("\t1.- A\n");
    printf ("\t2.- B\n");
    printf ("\t3.- C\n");
    printf ("\t: ");
    do {
        scanf ("%d", &tipo_de_madera);
        (void) getchar ();
        if (tipo_de_madera<1||tipo_de_madera>3)
            printf ("Valor incorrecto. Ingr\202salo nuevamente.: ");
    } while (tipo_de_madera<1||tipo_de_madera>3);
    subtotal=0;
    descuento=0;
    if(tipo_de_madera==1)
        subtotal=cantidad_de_m3*precio_por_m3_de_tipo_A;
    if(tipo_de_madera==2)
        subtotal=cantidad_de_m3*precio_por_m3_de_tipo_B;
    if(tipo_de_madera==3)
        subtotal=cantidad_de_m3*precio_por_m3_de_tipo_C;
    if(tipo_de_madera==1&&cantidad_de_m3>30)
        descuento=subtotal*0.04;
    if(tipo_de_madera==2&&cantidad_de_m3>30)
        descuento=subtotal*0.08;
    if(tipo_de_madera==3&&cantidad_de_m3>30)
        descuento=subtotal*0.1;
    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;
}