Sabendo que uma rede hoteleira deseja informatizar sua folha de pagamento, desenvolva em pseudocódigo uma solução conforme regras apresentadas pela empresa, de acordo com as especificações abaixo: O funcionário possui os seguintes dados de entrada: código, número de horas trabalhadas no mês, turno de trabalho (M – matutino, V – vespertino ou N – noturno), categoria (F – funcionário, G – gerente). Faça um algoritmo que: - Leia as informações dos funcionários: código (inteiro), número de horas trabalhadas (inteiro) no mês, turno (caractere) e categoria (caractere). Não leia somente o valor da hora trabalhada (real), pois será calculada. - Considere sempre a digitação de uma única letra para representar o turno de trabalho e a categoria do funcionário, conforme as tabelas: - Calcule o valor da hora trabalhada, conforme as regras apresentadas na tabela a seguir. O valor do salário mínimo deve ser solicitado pelo algoritmo, pois ele varia de estado para estado e a rede de hotéis está distribuída por todo o País. Utilizar o comando de seleção múltipla (ou um comando escolha e outro pode ser se encadeado – não utilizar se simples para esse item) para testar a categoria e o turno para calcular o valor da hora trabalhada. - Calcule o salário inicial do funcionário com base no valor da hora trabalhada e no número de horas trabalhadas. - Calcule o valor do auxílio-alimentação recebido pelo funcionário de acordo com seu salário inicial, conforme a tabela a seguir. Utilizar o comando de seleção composto encadeado. - Imprima como saída o código, número de horas trabalhadas, valor da hora trabalhada, salário inicial, auxílio alimentação e salário final (salário inicial + auxílio-alimentação). a) Represente uma solução no VisuAlg para o problema descrito em forma de pseudocódigo para simular a folha da empresa. Entregue o arquivo .alg desenvolvido. b) Realize o teste de mesa para as seguintes entradas: Com salário mínimo de R$ 780,00
Soluções para a tarefa
Resposta:aNEXO 1 RESPOSTA, E ANEXO 2 RESPOSTA B
Explicação:
Resposta:
Alternativa A)
Algoritmo "folha"
var
sal_minimo, sal_inicial, vl_hora, alimentacao, sal_final: real
cod, horas: inteiro
categoria, turno: caracter
inicio
Escreval ("Digite o código do funcionário: ")
Leia (cod)
Escreva ("Digite o número de horas trabalhadas no mês (inteiro): ")
Leia (horas)
Escreval ("Digite o terno (M-manhã, T-tarde, N-noite): ")
Leia (turno)
Escreval ("Digite a categoria (G-gerente, F-funcionário): ")
Leia (categoria)
Escreval ("Digite o valor do salário minimo (estadual): ")
Leia (sal_minimo)
Escolha (categoria)
caso "G"
Escolha (turno)
caso "M"
vl_hora <- sal_minimo*(4/100)
caso "V"
vl_hora <= sal_minimo*(4/100)
caso "N"
vl_hora <- sal_minimo*(6/100)
fimescolha
caso "F"
Escolha (turno)
caso "M"
vl_hora <- sal_minimo*(1/100)
caso "V"
vl_hora <- sal_minimo*(1/100)
caso "N"
vl_hora <- sal_minimo*(2/100)
fimescolha
fimescolha
sal_minimo <- vl_hora * horas
se (sal_inicial >= 0) e (sal_inicial <= 800) entao
alimentacao <- sal_inicial * (25/100)
senao
se (sal_inicial > 800) e (sal_inicial <= 1200) entao
alimentacao <- sal_inicial * (20/100)
senao
se (sal_inicial >= 1200) entao
alimentacao <- sal_inicial * (15/100)
fimse
fimse
fimse
sal_final <- sal_inicial + alimentacao
Escreval ("Relatório do funcionário: ") // impressao de saídas solicitadas.
Escreval ("Código do funcionário: ", cod)
Escreval ("Número de horas trabalhadas: ", horas)
Escreval ("Valor da hora trabalhada: ", vl_hora)
Escreval ("Salário inicial: ", sal_inicial)
Escreval ("Auxilio alimentacao: ", alimentacao)
Escreval ("Salário final: ", sal_final)
Fimalgoritmo
Alternativa B)
Explicação: