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 ("Ingrese el nombre: ");
        scanf ("%[^\r\n]", nombre);
        (void) getchar ();
        printf ("Ingrese el apellido: ");
        scanf ("%[^\r\n]", apellido);
        (void) getchar ();
        printf ("Ingrese el numero de identificacion: ");
        scanf ("%[^\r\n]", numero_de_identificacion);
        (void) getchar ();
        printf ("Ingrese el valor de cantidad de abrazaderas c libra: ");
        scanf ("%f", &cantidad_de_abrazaderas_c_libra);
        (void) getchar ();
        printf ("Ingrese el valor de cantidad de brochas c una: ");
        scanf ("%f", &cantidad_de_brochas_c_una);
        (void) getchar ();
        printf ("Ingrese el valor de cantidad de cementina c saco: ");
        scanf ("%f", &cantidad_de_cementina_c_saco);
        (void) getchar ();
        printf ("Ingrese el valor de cantidad de cemento c saco: ");
        scanf ("%f", &cantidad_de_cemento_c_saco);
        (void) getchar ();
        printf ("Ingrese el valor de cantidad de clavos c libra: ");
        scanf ("%f", &cantidad_de_clavos_c_libra);
        (void) getchar ();
        printf ("Ingrese el valor de cantidad de hierro 1 2 c varilla: ");
        scanf ("%f", &cantidad_de_hierro_1_2_c_varilla);
        (void) getchar ();
        printf ("Ingrese el valor de cantidad de hierro 1 4 c varilla: ");
        scanf ("%f", &cantidad_de_hierro_1_4_c_varilla);
        (void) getchar ();
        printf ("Ingrese el valor de cantidad de pintura c galon: ");
        scanf ("%f", &cantidad_de_pintura_c_galon);
        (void) getchar ();
        printf ("Ingrese el valor de edad: ");
        scanf ("%f", &edad);
        (void) getchar ();
        printf ("Seleccione 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\202selo 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 ("\250Desea 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;
}