Primeira Lista de Exercícios – Avaliação Prática da P3
2015.2
1. A empresa XPTO possui o arquivo EMPRESAS.TXT com as seguintes informações dos seus
departamentos:
• Código do departamento (inteiro);
• Quantidade de funcionários do departamento (inteiro);
• Para cada funcionário do departamento:
o Matrícula (inteiro);
o Quantidade de dependentes (inteiro);
o Salário (real).
a) Faça a função um_departamento que receba como parâmetros a quantidade (n) de
funcionários do departamento, o ponteiro para o arquivo e dois ponteiros para inteiro. Esta
função deverá ler, do arquivo, os dados dos n funcionários do departamento e armazenar, nas
variáveis cujos endereços são fornecidos na chamada da função, a quantidade de funcionários
com até 5 dependentes que ganham mais de 5000,00 e a quantidade de funcionários com
mais de 5 dependentes que ganham mais de 5000,00.
Protótipo da função:
void um_departamento (int n, FILE *arq, int *qtate5, int *qtacima);
b) Faça um programa que leia os dados do arquivo EMPRESAS.TXT e, utilizando a função
acima, exiba a quantidade de funcionários com até 5 dependentes que ganham mais de
5000,00 e a quantidade de funcionários com mais de 5 dependentes que ganham mais de
5000,00.
2. Um produto pode ter seu preço de venda modificado, para mais ou para menos, várias vezes
ao longo do ano. Um portal de compras de produtos possui o arquivo historico.txt que contém o
histórico dos preços dos produtos comercializados. Cada produto pode ter uma quantidade
diferente de preços armazenada no arquivo. O arquivo possui as seguintes informações de cada
produto: código do produto, quantas vezes o produto teve seu preço modificado e para cada vez o
preço.
a) Faça a função minMax que recebe como parâmetros quantas vezes (n) um produto teve seu
preço modificado e o ponteiro para o arquivo. Esta função deverá ler, do arquivo, os preços do
produto, descobrir o menor e o maior preço do produto, armazenando-os nas variáveis cujos
endereços são fornecidos na chamada da função. Considere que não há empate. Protótipo da
função:
void minMax(int n, FILE *arq, float *prMin, float *prMax);
b) Faça um programa, utilizando, obrigatoriamente, a função acima, que exiba na tela para cada
produto comercializado pelo site, o código do produto, o menor preço e o maior preço.
Um exemplo do arquivo histórico.txt
123 3 5.00 6.50 5.50
357 1 4.50
234 4 3.00 2.00 3.50 2.50
Um exemplo da saída
123 5.00 6.50
357 4.50 4.50
234 2.00 3.50
3. Uma loja possui as seguintes informações dos seus produtos: código do produto (número
inteiro), código do fornecedor (número inteiro de 1 a 10), tipo do produto (número inteiro de 60 a
69) e preço de custo atual.
a) Faça a função preenche_percentual_aumento_por_fornecedor: lê, do arquivo
“fornecedores.txt”, o código do fornecedor e o percentual de aumento informado pelo
fornecedor, e em seguida armazena em um vetor de reais recebido como parâmetro, o
percentual de aumento de cada fornecedor. A 1ª posição deste vetor armazena o percentual
de aumento do fornecedor 1, a 2ª posição o percentual de aumento do fornecedor 2 e assim
sucessivamente sendo que a última posição armazena o percentual de aumento do fornecedor
10. Os dados de entrada não estão em ordem no arquivo, e cada linha do arquivo possui o
código do fornecedor e o percentual de aumento.
b) Faça a função preenche_lucro_por_tipo: lê, do arquivo “lucros.txt”, o tipo do produto e o
percentual de lucro desejado, e em seguida armazena em um vetor de reais, recebido como
parâmetro, o percentual de lucro desejado de cada tipo de produto. A 1ª posição deste vetor
armazena o percentual de lucro desejado do tipo 60, a 2ª posição armazena o percentual de
lucro desejado do tipo 61 e assim sucessivamente sendo que a última posição armazena o
percentual de lucro desejado do tipo 69. Os dados de entrada não estão em ordem no arquivo,
e cada linha do arquivo possui o tipo do produto e o percentual de lucro.
c) Faça um programa, utilizando as funções acima, implementadas por você, que inicialmente,
leia de um arquivo o percentual de aumento de cada fornecedor (código do fornecedor e
percentual de aumento). Em seguida, leia de outro arquivo o percentual de lucro desejado
para cada tipo de produto (tipo do produto e percentual de lucro desejado). Depois, leia do
teclado os dados de cada produto comercializado, calcule e exiba na tela: o código do produto,
o preço de custo após aumento e o preço de venda após aumento. Término da leitura: código
do produto = 0.
Download

1a Lista Avaliação P3