Você está na página 1de 3

Universidade Estadual de Santa Cruz (UESC)

Departamento de Ciências Exatas e Tecnoló gicas (DCET)


Bacharelado em Engenharia de Produçã o – 05/07/2018
Disciplina: Linguagem de Programaçã o I – Prova 3 - Profa.: Trícia Santos

Aluno: ________________________________________________________________________

Questão 1 (5,0 pontos): Escrever um programa em C que leia um vetor de 10 elementos. O vetor deve armazenar a
lista de funcioná rios de um projeto. Os seguintes dados devem ser armazenados para cada funcioná rio: nome,
qtdeHorasTrabalhadasSemana, qtdeFaltasMes. O seu programa deve testar se o valor inserido para
qtdeHorasTrabalhadasSemana e a qtdeFaltas sã o maiores ou iguais a 0 (zero). Apó s a leitura completa do vetor, o
programa deve apresentar na tela do computador a lista de funcioná rios e para cada funcioná rio, seu respectivo
status (“Descontar dias nã o trabalhados” quando qtdeFaltas > 0; Quando a qtdeFaltas = 0, entã o status deve ser
“Adicionar hora extra” quando qtdeHorasTrabalhadasSemana > 40 OU “Descontar horas nã o trabalhadas” quando
qtdeHorasTrabalhadasSemana < 40). Ao final o programa deve apresentar o nome e a quantidade de horas
trabalhadas na semana do funcioná rio que trabalhou a maior quantidade de horas na semana em relaçã o a todos os
funcioná rios.
Dica: usar struct.

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <string.h>

int main()
{
struct {
char nome[20];
int qtdeHorasTrabalhadasSemana;
int qtdeFaltasMes;} listaFuncionario [10];
int i;
int maiorQtdeHorasSemana = 0;
char nomeFuncionario[20];

setlocale(LC_ALL,"");
printf("\n Entre com o nome, a quantidade de horas semanais trabalhadas e a quantidade de faltas do mês da lista
de 10 funcioná rios:\n");
for(i=0;i<10;i++){
printf("\n Entre com o nome do %do funcioná rio: ", i+1);
fflush(stdin);
fgets(listaFuncionario[i].nome, 20, stdin);
printf("\n Entre com a quantidade de horas semanais trabalhadas do %do funcioná rio: ", i+1);
scanf("%d", &listaFuncionario[i].qtdeHorasTrabalhadasSemana);
if (listaFuncionario[i].qtdeHorasTrabalhadasSemana < 0){
printf("\n Valor fora da faixa!");
return 0;
}
printf("\n Entre com a quantidade de faltas do mês %do funcioná rio: ", i+1);
scanf("%d", &listaFuncionario[i].qtdeFaltasMes);
if (listaFuncionario[i].qtdeFaltasMes < 0){
printf("\n Valor fora da faixa!");
return 0;
}

if (listaFuncionario[i].qtdeHorasTrabalhadasSemana > maiorQtdeHorasSemana){


maiorQtdeHorasSemana = listaFuncionario[i].qtdeHorasTrabalhadasSemana;
strcpy(nomeFuncionario, listaFuncionario[i].nome);
}
}

printf("\n Lista de funcioná rios:\n");


printf("\n Nome qtdeHorasTrabalhadasSemana QtdeFaltasMes Status \n");
for(i=0;i<10;i++){
if (listaFuncionario[i].qtdeFaltasMes > 0){
printf("\n %s %.d %d Descontar dias nã o trabalhados!", listaFuncionario[i].nome,
listaFuncionario[i].qtdeHorasTrabalhadasSemana, listaFuncionario[i].qtdeFaltasMes);
}
else
if (listaFuncionario[i].qtdeHorasTrabalhadasSemana > 40){
printf("\n %s %d %d Adicionar hora extra!", listaFuncionario[i].nome,
listaFuncionario[i].qtdeHorasTrabalhadasSemana, listaFuncionario[i].qtdeFaltasMes);
}
else
if (listaFuncionario[i].qtdeHorasTrabalhadasSemana < 40){
printf("\n %s %d %d Descontar horas nã o trabalhadas!", listaFuncionario[i].nome,
listaFuncionario[i].qtdeHorasTrabalhadasSemana, listaFuncionario[i].qtdeFaltasMes);
}
else
printf("\n %s %d %d ", listaFuncionario[i].nome, listaFuncionario[i].qtdeHorasTrabalhadasSemana,
listaFuncionario[i].qtdeFaltasMes);
}

printf("\n Funcioná rio com maior quantidade de horas semanais trabalhadas: %s %d", nomeFuncionario,
maiorQtdeHorasSemana);

return 0;
}

Questão 2 (5,0 pontos): Escrever um programa em C que leia os elementos de uma matriz inteira de dimensõ es
4 x 4. O programa deve apresentar na tela do computador a matriz em linhas e colunas com a respectiva soma de cada
linha (conforme exemplo abaixo)
1 1 2 3 Soma: 7
2 4 5 2 Soma: 13
3 4 5 1 Soma: 13
4 6 7 8 Soma: 25

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>

int main()
{
int matriz [4][4];
int i, j, soma=0;

setlocale(LC_ALL,"");
printf("\n Entre com os valores para a matriz 4 x 4:\n");
for(i=0;i<4;i++)
for(j=0;j<4;j++){
printf("\n Entre com o valor para matriz [%d][%d]: ", i, j);
scanf("%D", &matriz[i][j]);
}

printf("\n Matriz ajustada:\n");


for(i=0;i<4;i++){
for(j=0;j<4;j++){
printf(" %d", matriz[i][j]);
soma = soma + matriz[i][j];
}
printf(" Soma: %d \n", soma);
soma = 0;
}

return 0;
}

Sucesso!

for(i=0;i<n;i++){
if(i<=0)
V[i] = V[i] + A[i];

printf("\n A soma da linha A[%d] eh V[%d]:", i, A[i] V[i]);


}

Você também pode gostar