• Lenguaje

    C

  • Descripción

    Un almacén ha recopilado los datos de N productos, para esto se ingresan en un proceso repetitivo: el tipo (comida, vestido), la procedencia (Nacional, Importado) y el precio de cada producto. Construya un algoritmo que permita calcular lo siguiente:
    a) El promedio de precios de productos procedencia Nacional.
    b) El promedio de precios de productos procedencia Importado.
    c) El menor precio.
    d) La cantidad de productos del tipo Comida.
    e) La cantidad de productos del tipo Vestido.

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

int main (void)
{
    int cantidad_comida, cantidad_importados, cantidad_nacionales, cantidad_vestido, i;
    int n, procedencia, tipo;
    float menor_precio, precio, promedio_importados, promedio_nacionales;
    cantidad_comida = 0;
    cantidad_importados = 0;
    cantidad_nacionales = 0;
    cantidad_vestido = 0;
    menor_precio = 0;
    promedio_importados = 0;
    promedio_nacionales = 0;
    printf ("Ingresa el valor de n: ");
    scanf ("%d", &n);
    (void) getchar ();
    for (i=1; i<=n; i++)
    {
        printf ("PROCESO %d\n", i);
        printf ("Ingresa el valor de precio: ");
        scanf ("%f", &precio);
        (void) getchar ();
        printf ("Selecciona el valor de tipo.\n");
        printf ("\t1.- Comida\n");
        printf ("\t2.- Vestido\n");
        printf ("\t: ");
        do {
            scanf ("%d", &tipo);
            (void) getchar ();
            if (tipo<1||tipo>2)
                printf ("Valor incorrecto. Ingr\202salo nuevamente.: ");
        } while (tipo<1||tipo>2);
        printf ("Selecciona el valor de procedencia.\n");
        printf ("\t1.- Nacional\n");
        printf ("\t2.- Importado\n");
        printf ("\t: ");
        do {
            scanf ("%d", &procedencia);
            (void) getchar ();
            if (procedencia<1||procedencia>2)
                printf ("Valor incorrecto. Ingr\202salo nuevamente.: ");
        } while (procedencia<1||procedencia>2);
        if(procedencia==1)
        {
            promedio_nacionales=promedio_nacionales+precio;
            cantidad_nacionales=cantidad_nacionales+1;
        }
        else
        {
            promedio_importados=promedio_importados+precio;
            cantidad_importados=cantidad_importados+1;
        }
        if(i==1||menor_precio>precio)
            menor_precio=precio;
        if(tipo==1)
            cantidad_comida=cantidad_comida+1;
        else
            cantidad_vestido=cantidad_vestido+1;
        putchar ('\n');
    }
    if (cantidad_importados == 0)
    {
        promedio_importados = 0;
    }
    else
    {
        promedio_importados=promedio_importados/cantidad_importados;
    }
    if (cantidad_nacionales == 0)
    {
        promedio_nacionales = 0;
    }
    else
    {
        promedio_nacionales=promedio_nacionales/cantidad_nacionales;
    }
    printf ("Valor de cantidad comida: %d\n", cantidad_comida);
    printf ("Valor de cantidad importados: %d\n", cantidad_importados);
    printf ("Valor de cantidad nacionales: %d\n", cantidad_nacionales);
    printf ("Valor de cantidad vestido: %d\n", cantidad_vestido);
    printf ("Valor de menor precio: %f\n", menor_precio);
    printf ("Valor de promedio importados: %f\n", promedio_importados);
    printf ("Valor de promedio nacionales: %f\n", promedio_nacionales);
    system ("pause");
    return EXIT_SUCCESS;
}