• Matéria: Informática
  • Autor: paana8632
  • Perguntado 3 anos atrás

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

respondido por: matheusnascimento20
1

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;

}

Perguntas similares