Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
ENADE 2017 - Questão discursiva 03
// Criado por: profa. Divani Barbosa Gavinier
// Curriculo Lattes: http://lattes.cnpq.br/8503400830635447
// divanibarbosa@gmail.com
/*
Uma empresa de cosméticos comercializa cinco diferentes tipos de produtos e os armazena em uma estante de 40 x 40 posições. Em cada posição da estante, pode ficar armazenada apenas uma caixa com um desses produtos. Para facilitar sua identificação, os produtos foram codificados da forma a seguir:
1: xampu;
2: condicionador;
3: hidratante;
4: tintura;
5: demaquilante;
0: vazio;
Nessa situação considerando o desenvolvimento de um sistema para gerenciar a organização dos produtos na estante, estabeleceu-se a declaração das variáveis a seguir:
Var
Estante: matriz[1..40][1..40] de inteiro
Produtos: vetor[0..5] de texto = {"vazio","xampu","condicionador",
"hidratante","tintura","demaquilante"}
Contador: vetor[0..5] de inteiro = {0,0,0,0,0,0}
i, j: inteiro
Com base nessa declaração e considerando a codificação dos produtos exposta, faça o que se pede nos itens a seguir, apresentado as soluções em pseudocódigo ou em linguagem de programação C.
a) Escreva um trecho de código para ler códigos dos produtos e armazena-los na matriz Estante.
b) Escreva um trecho de código para contar e imprimir a quantidade de caixas de cada tipo de produto na estante.
*/
#include <stdio.h>
#include <stdlib.h>
#define N 40 /* Use 3 no lugar do 40 para testar */
main() {
int estante[N][N];
char produto[6][100] = {"vazio","xampu","condicionador","hidratante","tintura","demaquilante"};
int contador[6] = {0,0,0,0,0,0};
int i, j;
printf("Considere os seguintes produtos e seus codigos: \n");
printf("1: xampu;\n2: condicionador;\n3: hidratante;\n4: tintura;\n5: demaquilante;\n0: vazio\n");
printf("Adicione %d produtos na estante informando seu codigo\n",N*N);
for (i = 0; i < N; i++) {
for (j = 0; j < N; j++) {
printf("Forneca codigo: ");
scanf("%d", &estante[i][j]);
if (estante[i][j] > 5 || estante[i][j] < 0) {
printf("ATENCAO: Codigo de produto invalido\n");
j--;
}
}
}
for (i = 0; i < N; i++) {
for (j = 0; j < N; j++) {
contador[ estante[i][j] ] ++;
}
}
for (i = 1; i <= 5; i++) {
printf("Produto %s possui %d caixas na estante.\n",produto[i],contador[i]);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment