• Lenguaje

    C

  • Descripción

    Permita la gestión de ventas en una ferretería de la ciudad. Existen algunas políticas estrictas para el proceso de venta de la ferretería. Para que se efectué el cobro de una factura se debe pedir a los clientes (nombre, apellido, edad, ciudad y número de identificación); luego se pedirá cada uno de los productos comprados por el cliente (nombre del producto y número de productos). Las restricciones son las siguientes:
    - Si el comprador es de la ciudad de Loja, se reducirá el 25% del costo total de los productos comprados.
    - Si el comprador es de la ciudad de Quito, se reducirá el 20% del costo total de los productos.
    - Si el comprador es de otra ciudad, se reducirá el 18% del costo total de los productos.
    Los productos que constan en bodega son:
    Nombre Cantidad | $Costo
    Cemento c/saco | 12.25
    Cementina c/saco | 8.45
    Clavos c/libra | 1.50
    Hierro 1/2 c/varilla | 5.50
    Hierro 1/4 c/varilla | 3.45
    Pintura c/galon | 12.15
    Abrazaderas c/libra | 2.40
    Brochas c/una | 2.25
    El cobro del iva en la ferretería es muy particular, si el cliente tiene 18 años o menos, se le cobra el 10% del iva; caso contrario el iva a cobrar es del 12%.

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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main (void)
{
    int ciudad;
    float cantidad_de_abrazaderas_c_libra, cantidad_de_brochas_c_una, cantidad_de_cementina_c_saco, cantidad_de_cemento_c_saco, cantidad_de_clavos_c_libra;
    float cantidad_de_hierro_1_2_c_varilla, cantidad_de_hierro_1_4_c_varilla, cantidad_de_pintura_c_galon, costo_total, descuento;
    float edad, iva, total_a_pagar;
    char nombre[63], apellido[63], numero_de_identificacion[63];
    char tecla_repetir;
    do {
        system ("cls");
        printf ("Ingresa el nombre: ");
        scanf ("%[^\r\n]", nombre);
        (void) getchar ();
        printf ("Ingresa el apellido: ");
        scanf ("%[^\r\n]", apellido);
        (void) getchar ();
        printf ("Ingresa el numero de identificacion: ");
        scanf ("%[^\r\n]", numero_de_identificacion);
        (void) getchar ();
        printf ("Ingresa el valor de cantidad de abrazaderas c libra: ");
        scanf ("%f", &cantidad_de_abrazaderas_c_libra);
        (void) getchar ();
        printf ("Ingresa el valor de cantidad de brochas c una: ");
        scanf ("%f", &cantidad_de_brochas_c_una);
        (void) getchar ();
        printf ("Ingresa el valor de cantidad de cementina c saco: ");
        scanf ("%f", &cantidad_de_cementina_c_saco);
        (void) getchar ();
        printf ("Ingresa el valor de cantidad de cemento c saco: ");
        scanf ("%f", &cantidad_de_cemento_c_saco);
        (void) getchar ();
        printf ("Ingresa el valor de cantidad de clavos c libra: ");
        scanf ("%f", &cantidad_de_clavos_c_libra);
        (void) getchar ();
        printf ("Ingresa el valor de cantidad de hierro 1 2 c varilla: ");
        scanf ("%f", &cantidad_de_hierro_1_2_c_varilla);
        (void) getchar ();
        printf ("Ingresa el valor de cantidad de hierro 1 4 c varilla: ");
        scanf ("%f", &cantidad_de_hierro_1_4_c_varilla);
        (void) getchar ();
        printf ("Ingresa el valor de cantidad de pintura c galon: ");
        scanf ("%f", &cantidad_de_pintura_c_galon);
        (void) getchar ();
        printf ("Ingresa el valor de edad: ");
        scanf ("%f", &edad);
        (void) getchar ();
        printf ("Selecciona el valor de ciudad.\n");
        printf ("\t1.- Loja\n");
        printf ("\t2.- Quito\n");
        printf ("\t3.- otra\n");
        printf ("\t: ");
        do {
            scanf ("%d", &ciudad);
            (void) getchar ();
            if (ciudad<1||ciudad>3)
                printf ("Valor incorrecto. Ingr\202salo nuevamente.: ");
        } while (ciudad<1||ciudad>3);
        costo_total=cantidad_de_cemento_c_saco*12.25+cantidad_de_cementina_c_saco*8.45+cantidad_de_clavos_c_libra*1.5+cantidad_de_hierro_1_2_c_varilla*5.5+cantidad_de_hierro_1_4_c_varilla*3.45+cantidad_de_pintura_c_galon*12.15+cantidad_de_abrazaderas_c_libra*2.4+cantidad_de_brochas_c_una*2.25;
        descuento=0;
        if(ciudad==1)
            descuento=costo_total*0.25;
        if(ciudad==2)
            descuento=costo_total*0.2;
        if(ciudad==3)
            descuento=costo_total*0.18;
        iva=edad<=18?(costo_total-descuento)*0.1:(costo_total-descuento)*0.12;
        total_a_pagar=costo_total-descuento+iva;
        printf ("Nombre: %s\n", nombre);
        printf ("Apellido: %s\n", apellido);
        printf ("Numero de identificacion: %s\n", numero_de_identificacion);
        printf ("Valor de costo total: %g\n", costo_total);
        printf ("Valor de descuento: %g\n", descuento);
        printf ("Valor de iva: %g\n", iva);
        printf ("Valor de total a pagar: %g\n", total_a_pagar);
        putchar ('\n');
        printf ("\250Deseas repetir el proceso? (S/N): ");
        do {
            tecla_repetir = (char) getch();
        } while (tecla_repetir!='s' && tecla_repetir!='n' && tecla_repetir!='S' && tecla_repetir!='N');
        putchar ('\n');
    } while (tecla_repetir=='s' || tecla_repetir=='S');
    return EXIT_SUCCESS;
}