em c
Codifique um programa que leia e armazene a matrícula (um número
inteiro) e o salário de 5 funcionários utilizando vetores. Os funcionários cuja matrícula
for um número par devem receber um aumento de 15%; já os funcionários cuja
matrícula for um número ímpar, devem receber um aumento de 20%. Utilize
procedimentos para ler os salários, aplicar o reajuste salárial e imprimir as
informações, no seguinte formato:
Funcionario 1
matricula : 2784
salario base : R$ 7 8 6 0 . 5 0
percentual de aumento : 15
salario corrigido : R$ 9 0 3 9 . 5 7
Respostas
Resposta:
Eu montei a ideia aqui, acho que pode te ajudar em algo.
Explicação:
#include <stdio.h>
#define TAM 5
typedef struct FUNC {
int matricula;
float salario;
}funcionario;
void Cadastrar(funcionario *func){
int x;
for(x=0;x<TAM;x++){
printf("Funcionario: [%d]\n",x+1);
printf("Matricula:\n");
scanf("%d",&func[x].matricula);
printf("Salario:\n");
scanf("%f",&func[x].salario);
}
printf("Dados gravados!\n");
}
void Reajuste(funcionario *func){
int x,p;
float ajuste;
for(x=0;x<TAM;x++){
if(func[x].matricula % 2 == 0){
ajuste = (0.15*func[x].salario);
func[x].salario = (func[x].salario + ajuste);
}else{
ajuste = (0.20*func[x].salario);
func[x].salario = (func[x].salario + ajuste);
}
}
for(x=0;x<TAM;x++){
}
}
void Relatorio(funcionario *func){
int x;
for(x=0;x<TAM;x++){
printf("ID = [%d] | Matricula: [%d] | Salario Base: [%.2f]\n",x,func[x].matricula,func[x].salario);
}
}
int main(){
funcionario novo[5];
Cadastrar(novo);
Relatorio(novo);
Reajuste(novo);
Relatorio(novo);
return 0;
}