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

int main()
{
   int i,contador;
   int tot1k,tot5k,tot10k,totmais10k;
   int totfunc;
   int resp;
   char  nomefunc[10][30];
   float salario[10], novosal[10];    /* Calculo para um conjunto de 10 funcionarios */
   float total, novotot;
 
   /* Inicializa Variveis */
   contador=0;
   tot1k=tot5k=tot10k=totmais10k=0;
   totfunc=0;
   total=0.0;
   novotot=0.0;
 
   /* Laco de leitura e processamento de dados: guarda dados em um vetor */
   printf ("\n\n> Controle de Salarios ACME <\n\n");
   for (i=0; i < 10; i++)
   {
         printf ("Digite o codigo de registro do funcionario: ");
         scanf  ("%s",nomefunc[i]);
         printf ("Digite o salario: ");
         scanf  ("%f",&salario[i]);
   }
   
   /* Aplica reajustes sobre o valor do salario */
   for (i=0; i < 10; i++) 
   {
         if (salario[i] < 1000.0)  novosal[i]=salario[i]*1.15;
         else if (salario[i] < 5000.0)  novosal[i]=salario[i]*1.10;
              else if (salario[i] < 10000.0) novosal[i]=salario[i]*1.05;
                   else novosal[i]=salario[i];
         /* Exibe novo salario reajustado */
         printf ("Funcionario: %s \n",nomefunc[i]);
         printf ("  Salario original: %.2f  -  Salario reajustado: %.2f\n",salario[i],novosal[i]);
   }
   
   /* Calcula totais por categoria */
   for (i=0; i < 10; i++) 
   {   
         if (novosal[i] < 1000.0)  tot1k++;
         else if (novosal[i] < 5000.0) tot5k++;
              else if (novosal[i] < 10000.0) tot10k++;
                   else totmais10k++;
   }
   
         
   /* Acumula Salarios Totais: Antigo e Novo */
   for (i=0; i < 10; i++) 
   {   
         total += salario[i];
         novotot += novosal[i];
         totfunc++;
   }         
   
   /* Exibe analise final dos dados */
   printf("\n");
   printf("> Relatorio Geral <\n");
   printf("\n");
   printf("Total da folha de pagamento antiga: %.2f\n",total);
   printf("Total da folha de pagamento nova  : %.2f\n",novotot);
   printf("Media de salarios antigos da empresa: %.2f\n",total/totfunc);
   printf("Media de salarios novos   da empresa: %.2f\n",novotot/totfunc);
   printf("Acrescimo na folha de pagamento: %.2f (acrescimo de %.2f por cento)\n",novotot-total,(novotot/total-1.0)*100.0);
   printf("\n");
   printf("> Totais de Funcionarios por Faixa Salarial (novo salario) <\n");
   printf("\n");
   printf("Nro. de funcionarios com salario abaixo de 1.000: %d\n",tot1k);
   printf("Nro. de funcionarios com salario entre 1.000 e menos de 5.000 : %d\n",tot5k);
   printf("Nro. de funcionarios com salario entre 5.000 e menos de 10.000: %d\n",tot10k);
   printf("Nro. de funcionarios com salario a partir de 10.000: %d\n",totmais10k);
   printf("Total de funcionarios: %d\n",totfunc);
   if (totfunc != (tot1k+tot5k+tot10k+totmais10k)) printf ("# ERRO de totais! #\n");

   printf("\n");
   system("pause");
   return 0;
}

