Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Gustavo Rodrigues Torre

Algoritmo - Rendimentos e descontos de um trabalhador

Recommended Posts

Escrever um algoritmo/programa que lê o número de um funcionário, o número de horas por ele trabalhadas, o valor que recebe por hora, o número de filhos com idade inferior a 14 anos, a idade, o tempo de serviço do funcionário e o valor do salário família por filho.Calcular o salário bruto, o desconto do INSS (8,5% do salário bruto) e o salário família. Calcular o IR (Imposto de Renda) como segue: Se Salário Bruto > 1.500,00 então IR = 15% do SB Se Salário Bruto > 500,00 e SB <= 1.500,00 então IR = 8% do SB Se salário Bruto <= 500,00 então IR = 0 Calcular o adicional conforme especificado: Se idade superior a 40 anos ADIC = 2% do SB Se tempo de serviço superior a 15 anos ADIC = 3.5% do SB Se tempo de serviço < 15 anos mas superior a 5 anos e idade maior do que 30 anos então ADIC = 1,5% do SB. Calcular o salário líquido. Escrever o número do funcionário, salário bruto, total dos descontos, adicional e salário líquido.Eu fiz como segue abaixo não sei se esta certo.algoritmo "semnome"// Função :// Autor :// Data : 13/9/2007// Seção de Declaraçõesvarnum_f, nu_ht, v_ph , n_f, idade, ts, vsf : realsb, INSS, tsf, ADIC, IR, td, sl : realinicio// Seção de Comandosescreva("Digite o número do funcionário: ")leia(num_f)escreva("Digite o número de horas trabalhas: ")leia(nu_ht)escreva("Digite o valor recebido por hora trabalhada: ")leia(v_ph)escreva("Digite o número de filhos com menos de 14 anos: ")leia(n_f)escreva("Digite a idade do funcionário: ")leia(idade)escreva("Digite o tempo de serviço prestados: ")leia(ts)escreva("Digite o valor do salário familia: ")leia(vsf) sb <- (nu_ht * v_ph) + tsf INSS <- sb * (85/100) tsf <- n_f * vsf sl <- sb - (INSS + ADIC + IR) td <- IR + INSS Se sb > 1.500 entao IR <- sb * (15/100) Se (sb >500) e (sb<=1500) entao IR <- sb * (8/100) Se (sb <= 500) entao IR <- 0 fimse fimse fimse Se (idade>40) entao ADIC <- sb * (2/100) Se (ts>15) entao ADIC <- sb * 9350/100) se (ts<15) ou (ts>=5) entao ADIC <- sb * (150/100) se (idade>30) entao ADIC <- sb * (150/100) fimse fimse fimse fimse escreva("O numero do funcionário e ",num_f) escreval escreva("O Adicional do funcionário e ",ADIC) escreval escreva("O sal bruto do funcionário e ",sb) escreval escreva("O salario liquido do funcionário e ",sl) escreval escreva("O total de desconto do salário do funcionário e ",TD)fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

As leituras parecem estar corretas, mas olhe essa parte logo no início dos cálculos.

 

sb <- (nu_ht * v_ph) + tsf

Qual o valor de tsf?

Voce não calculou, então ele não pode ser usado ai.

 

Sugestão: calcule o tsf antes do salário bruto.

 

INSS <- sb * (85/100)

Aqui tem um erro matemático.

85/100 é 85% e o exercício fala em 8,5% para o imposto de INSS.

 

Sugestão: multiplique sb por 0,085.

 

Reveja o restante dos cálculos cuidadosamente e se tiver dúvidas volte a postar.

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

As leituras parecem estar corretas, mas olhe essa parte logo no início dos cálculos.

sb <- (nu_ht * v_ph) + tsf
Qual o valor de tsf?Voce não calculou, então ele não pode ser usado ai.Sugestão: calcule o tsf antes do salário bruto.
INSS <- sb * (85/100)
Aqui tem um erro matemático.85/100 é 85% e o exercício fala em 8,5% para o imposto de INSS.Sugestão: multiplique sb por 0,085.Reveja o restante dos cálculos cuidadosamente e se tiver dúvidas volte a postar. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
algoritmo "semnome"// Função :// Autor :// Data : 13/9/2007// Seção de Declaraçõesvarnum_f, nu_ht, v_ph , n_f, idade, ts, vsf : realsb, INSS, tsf, ADIC, IR, td, sl : realinicio// Seção de Comandosescreva("Digite o número do funcionário: ")leia(num_f)escreva("Digite o número de horas trabalhas: ")leia(nu_ht)escreva("Digite o valor recebido por hora trabalhada: ")leia(v_ph)escreva("Digite o número de filhos com menos de 14 anos: ")leia(n_f)escreva("Digite a idade do funcionário: ")leia(idade)escreva("Digite o tempo de serviço prestados: ")leia(ts)escreva("Digite o valor do salário familia: ")leia(vsf) tsf <- n_f * vsf //calculo do TSF sb <- (nu_ht * v_ph) + tsf INSS <- sb * (850/100) // corrigido sl <- (INSS + ADIC + IR) - sb td <- IR + INSS Se sb > 1.500 entao IR <- sb * (15/100) Se (sb >500) e (sb<=1500) entao IR <- sb * (8/100) Se (sb <= 500) entao IR <- 0 fimse fimse fimse Se (idade>40) entao ADIC <- sb * (2/100) Se (ts>15) entao ADIC <- sb * 9350/100) se (ts<15) ou (ts>=5) entao ADIC <- sb * (150/100) se (idade>30) entao ADIC <- sb * (150/100) fimse fimse fimse fimse escreva("O numero do funcionário e ",num_f) escreval escreva("O Adicional do funcionário e ",ADIC) escreval escreva("O sal bruto do funcionário e ",sb) escreval escreva("O salario liquido do funcionário e ",sl) escreval escreva("O total de desconto do salário do funcionário e ",TD)fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olhe isso:

Calcular o salário bruto, o desconto do INSS (8,5% do salário bruto) e o salário família.

INSS <- sb * (850/100) // corrigido
Isso que voce fez é 850% o correto seria:
INSS <- sb * (8.5/100)
O cálculo do ADIC "adicional" não está claro.

Se idade superior a 40 anos ADIC = 2% do SB Se tempo de serviço superior a 15 anos ADIC = 3.5% do SB Se tempo de serviço < 15 anos mas superior a 5 anos e idade maior do que 30 anos então ADIC = 1,5% do SB.

Por exemplo:Eu tenho 42 anos e tenho 17 anos de serviço. Qual meu Adicional?2% ou 3.5%?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.