/* Programa para controlar a folha de pagamento de uma empresa Para cada um dos funcionários são dadas as seguintes inforamções: nome nome do funcionário sal Salario do funcionário hed Numero de horas extras diurnas hen Numero de horas extras noturnas dp Numero de dependentes fal Numero de faltas em horas val Total de vales retirados no mes */ #include #include #include #include const int nf=100; //Estrutura de dados (registro) struct dadfunc { char nome[25]; //nome do funcionário int cod; //Código do funcionário int hed,hen; //Numero de horas extras diurnas e Numero de horas extras noturnas int dp; //Numero de dependentes int fal; //Numero de faltas em horas double sal; //Salario do funcionário double val; //Total de vales retirados no mes double slb; //Salario bruto double dsc; //Descontos double slq; //Salario liquido double inss; //inss=0.08*sal double hes; //total de HE = hed*sal/160+hen*1.2*sal/160 double slf; //salario familia = nd*0.05*(salario minimo) double ir; //Imposto de renda ir=0.13*slb }; void main() { dadfunc fcn[nf]; int i=0; //int nf; int n,cod; //Número de funcionários cadastrados do { //menu(); cout << "\nEntre com o codigo do funcionario:\t"; cin >> cod; while (cod>0) { cout << "\nNome do funcionario:\t"; gets(fcn[i].nome); cout << "\nSalario:\t"; cin >> fcn[i].sal; cout << "\nHoras extras diurnas:\t"; cin >> fcn[i].hed; cout << "\nHoras extras noturnas:\t"; cin >> fcn[i].hen; cout << "\nNumero de dapendentes:\t"; cin >> fcn[i].dp; cout << "\nNumero de faltas:\t"; cin >> fcn[i].fal; cout << "\nvalor dos vales:\t"; cin >> fcn[i].val; //Cálculos fcn[i].hes=(fcn[i].hed*fcn[i].sal+fcn[i].hen*1.2*fcn[i].sal)/160; fcn[i].slf=fcn[i].dp*0.05*270; fcn[i].slb=fcn[i].sal+fcn[i].slf+fcn[i].hes; fcn[i].inss=fcn[i].sal*0.08; fcn[i].fal*=fcn[i].sal/160; fcn[i].ir=fcn[i].slb*0.13; fcn[i].slq=fcn[i].slb-fcn[i].inss-fcn[i].fal-fcn[i].val-fcn[i].ir; i++; cout << "\nEntre com o codigo do funcionario: OU\nDigite um numero negativo para SAIR:\t"; cin >> cod; } n=i; for(i=0;i=0); }