top of page

Algoritmo

 

Programa que recebe as informações de matrícula e salário bruto dos funcionario do departamento de televendas da Distribuidora de Cosmeticos, utilizado no trabalho da diciplina de Fundamentos de Redes de Computadores e informa os descontos, proventos e salário líquido a receber. 

 /* Programa que cadastra o funcionário, calcula o salário líquido de cada um e da a média salarial da empresa.

 Autor: Gabriel, Deborah, Denis, Ezio

 Data: 27/11/2014

 */

 

 Algoritmo Distribuidora_Cosmetico {

 

//declaração de constantes

constante msg1 = "*** CONTRA CHEQUE ***";

constante msg2 = "1 - Folha de Pagamento";

constante msg3 = "2 - Média Salarial da Empresa";

constante msg4 = "3 - Sair";

constante msg5 = "Essa versão suporta no máximo 50 cadastros";

constante lin = 50;

constante col = 8;

constante Sf1 = 35;

constante Sf2 = 24.66;

 

//declaração de variáveis

int opcao, opcao2, opcao3, cont = 0, vendas;

real mat [lin][col], familia = 0, total = 0, totalT = 0, media;

 

//menu

escreva (msg1);

escreva (msg2);

escreva (msg3);

escreva (msg4);

leia (opcao);

escreva (msg5);

 

enquanto (opcao != 3) {

se (opcao > 3) {

faça {

escreva ("ERRO! Escolha uma outra opção que seja válida: ");

leia (opcao);

} enquanto (opcao > 3);

} senão {

se (opcao == 1) {

se (cont == 50) {

escreva ("FIM: a quantidade limite de cadastros foi alcançada.");

} senão {

 

//informações iniciais

se (cont != 0) {

escreva ("PRÓXIMO CADASTRO");

}

escreva ("Dê a matrícula do funcionário: ");

leia (mat [cont][0]);

total = 0;

escreva ("Dê o salário: ");

leia (mat [cont][1]);

total = mat [cont][1];

 

//inss

se (mat [cont][1] <= 1317.07) {

mat [cont][2] = mat [cont][1] * 0.08;

} senão {

se (mat [cont][1] <= 2195.12) {

mat [cont][2] = mat [cont][1] * 0.09;

} senão {

se (mat [cont][1] <= 4390.24) {

mat [cont][2] = mat [cont][1] * 0.11;

}

}

}

total = total - mat [cont][2];

 

//vale transporte

escreva ("***VALE TRANSPORTE***");

escreva ("0 - Se o funcionário não pega o vale");

escreva ("1 - Se ele o pega");

leia (opcao2);

se (opcao2 != 0 && opcao2 != 1) {

faça {

escreva ("Opção inválida! Digite outra vez: ");

leia (opcao2);

} enquanto (opcao2 != 0 && opcao != 1);

} senão {

se (opcao == 0) {

mat [cont][3] = 0;

} senão {

mat [cont][3] = mat [cont][1] * 0.06;

total = total - mat [cont][3];

}

}

 

//salário família

escreva ("***SALÁRIO FAMÍLIA***");

escreva ("Quantos filhos este funcionário tem?");

leia (mat [cont][4];

se (mat [cont][1] <= 682.50) {

familia = Sf1 * mat [cont][4];

total = total + familia;

} senão {

se (mat [cont][1] <= 1025.81) {

familia = Sf2 * mat [cont][4];

total = total + familia;

}

}

 

//plano de saúde

escreva ("***PLANO DE SAÚDE***");

escreva ("O funcionário beneficía-se do plano de saúde?");

escreva ("1 - SIM");

escreva ("2 - NÃO");

leia (opcao3);

se (opcao3 != 1 && opcao != 2) {

faça {

escreva ("Opção Inválida! Digite outra vez: ");

leia (opcao3);

} enquanto (opcao3 != 1 && opcao3 != 2);

} senão {

se (opcao3 == 1) {

mat [cont][5] = 95;

total = total - mat [cont][5];

} senão {

mat [cont][5] = 0;

}

}

 

//comissão

escreva ("***COMISSÃO***");

escreva ("Quantas vendas o funcionário fez: ");

leia (vendas);

se (vendas <= 10) {

mat [cont][6] = 0;

} senão {

se (vendas <= 20) {

mat [cont][6] = 100;

} senão {

se (vendas <= 40) {

mat [cont][6] = 300;

} senão {

se (vendas > 40) {

mat [cont][6] = 500;

}

}

}

}

total = total + mat [cont][6];

escreva ("***DEMONSTRATIVO***");

escreva ("O salário bruto é: R$ ", mat [cont][1]);

escreva ("O valor descontado pelo INSS é: R$ ", mat [cont][2]);

escreva ("O valor descontado pelo Vale Transporte é: R$ ", mat [cont][3]);

escreva ("O valor recebido pelo salário família é: R$ ", mat [cont][4]);

escreva ("O valor descontado pelo plano de saúde é: R$ ", mat [cont][5]);

escreva ("A comissão recebida é: R$ ", mat [cont][6], " pela quantidade de vendas igual a ", vendas);

escreva ("O seu salário é: R$ ", total);

}

mat [cont][7] = total;

totalT = totalT + total;

cont ++;

escreva (msg1);

escreva (msg2);

escreva (msg3);

escreva (msg4);

leia (opcao);

escreva (msg5);

}

se (opcao == 2) {

media = totalT / cont;

escreva ("*** MEDIA DOS SALARIOS ***");

escreva ("A média salarial da empresa é R$ ", media);

escreva (msg1);

escreva (msg2);

escreva (msg3);

escreva (msg4);

leia (opcao);

escreva (msg5);

}

}

}

 }

 

 

 

 

bottom of page