Ir ao conteúdo
  • Cadastre-se

Vinezof2

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

1
  1. Olá, estou fazendo um curso de informática e neste curso foi proposta uma atividade de desenvolver um algoritmo para dar bônus a 4 funcionários dependendo dos dependentes desse funcionário, enfim, fiz o programa e ele funcionou o problema é que o cônjuge pode ser um dependente então eu fiz uma condição para que se o funcionário fosse solteiro ele não pudesse receber o bônus do cônjuge, mas sempre que o funcionário é solteiro a idade dos dependentes é lida duas vezes, não altera o fluxo do programa simplesmente muda o valor da variável, mas considero isso um erro e li e re-li o algoritmo e não consegui resolver isso. Parte do algoritmo que contém o erro: enquanto (quant_dependentes>contador) faca repita escreva ("Tipo do Dependente (C= Cônjuge | X= Outros): ") leia (tipo_dependente) ate (tipo_dependente="C") ou (tipo_dependente="X") se (tipo_dependente="C") e (estado_civil="C") então enquanto (contador_conjuge<1) faca escreva ("Idade do Cônjuge: ") leia (idade_conjuge) bonus_funcionario1 := bonus_funcionario1 + 20 contador_conjuge := contador_conjuge + 1 contador := contador + 1 fimenquanto senao repita escreva ("Idade do Dependente: ") leia (idade_dependente) ate (idade_dependente>0) contador := contador + 1 se (idade_dependente<=17) então bonus_funcionario1 := bonus_funcionario1 + 15 fimse fimse fimenquanto Algoritmo inteiro: algoritmo "Bônus Funcionário" // Função : Dar bônus aos funcionários // Autor : João Vitor de A. Vinezof // Data : 10/11/2017 // Seção de Declarações var funcionario1, funcionario2, funcionario3, funcionario4: literal idade_conjuge, dependente, tipo_dependente, idade_dependente, estado_civil: literal bonus_funcionario1, bonus_funcionario2, bonus_funcionario3, bonus_funcionario4: inteiro contador, contador_conjuge, quant_dependentes: inteiro inicio // Seção de Comandos //Definindo os valores dos acumuladores e contadores bonus_funcionario1 := 40 bonus_funcionario2 := 40 bonus_funcionario3 := 40 bonus_funcionario4 := 40 contador := 0 contador_conjuge := 0 //Funcionário 01 escreval ("Dados do funcionário 1:") escreva ("Nome: ") leia (funcionario1) repita escreva ("Estado Civil (C= Casado | S= Solteiro): ") leia (estado_civil) ate (estado_civil="C") ou (estado_civil="S") repita escreva ("Possuí Dependentes? (N= Não | S= Sim): ") leia (dependente) ate (dependente="N") ou (dependente="S") se (dependente="S") então repita escreva ("Quantos? ") leia (quant_dependentes) ate (quant_dependentes>0) fimse enquanto (quant_dependentes>contador) faca repita escreva ("Tipo do Dependente (C= Cônjuge | X= Outros): ") leia (tipo_dependente) ate (tipo_dependente="C") ou (tipo_dependente="X") se (tipo_dependente="C") e (estado_civil="C") então enquanto (contador_conjuge<1) faca escreva ("Idade do Cônjuge: ") leia (idade_conjuge) bonus_funcionario1 := bonus_funcionario1 + 20 contador_conjuge := contador_conjuge + 1 contador := contador + 1 fimenquanto senao repita escreva ("Idade do Dependente: ") leia (idade_dependente) ate (idade_dependente>0) contador := contador + 1 se (idade_dependente<=17) então bonus_funcionario1 := bonus_funcionario1 + 15 fimse fimse fimenquanto escreval contador := 0 contador_conjuge := 0 quant_dependentes := 0 //Funcionário 02 escreval ("Dados do Funcionário 2:") escreva ("Nome: ") leia (funcionario2) repita escreva ("Estado Civil (C= Casado | S= Solteiro): ") leia (estado_civil) ate (estado_civil="C") ou (estado_civil="S") repita escreva ("Possuí Dependentes? (N= Não | S= Sim): ") leia (dependente) ate (dependente="N") ou (dependente="S") se (dependente="S") então repita escreval ("Quantos? ") leia (quant_dependentes) ate (quant_dependentes>0) fimse enquanto (quant_dependentes>contador) faca repita escreva ("Tipo do dependente (C= Cônjuge | X= Outros): ") leia (tipo_dependente) ate (tipo_dependente="C") ou (tipo_dependente="X") se (tipo_dependente="C") e (estado_civil="C") então enquanto (contador_conjuge<1) faca repita escreva ("Idade do Cônjuge: ") leia (idade_conjuge) ate (idade_conjuge>0) bonus_funcionario2 := bonus_funcionario + 20 contador_conjuge := contador_conjuge + 1 contador := contador + 1 fimenquanto senao repita escreva ("Idade do Dependente: ") leia (idade_dependente) ate (idade_dependente>0) contador := contador + 1 se (idade_dependente<=17) então bonus_funcionario2 := bonus_funcionario2 + 15 fimse fimse fimenquanto contador := 0 contador_conjuge := 0 quant_dependentes := 0 escreval //Funcionário 03 escreval ("Dados do Funcionário 3: ") escreva ("Nome: ") leia (funcionario3) repita escreva ("Estado Civil (C= Cônjuge | S= Solteiro): ") leia (estado_civil) ate (estado_civil="C") ou (estado_civil="S") repita escreva ("Possuí Dependentes? (N= Não | S= Sim): ") leia (dependente) ate (dependente="N") ou (dependente="S") se (dependente="S") então repita escreva ("Quantos? ") leia (quant_dependentes) ate (quant_dependentes>0) fimse enquanto (quant_dependentes>contador) faca repita escreva ("Tipo do Dependente (C= Cônjuge | X= Outros): ") leia (tipo_dependente) ate (tipo_dependente="C") ou (tipo_dependente="X") se (tipo_dependente="C") e (estado_civil="C") então enquanto (contador_conjuge<1) faca repita escreva ("Idade do Cônjuge: ") leia (idade_conjuge) ate (idade_conjuge>0) bonus_funcionario3 := bonus_funcionario3 + 20 contador_conjuge := contador_conjuge + 1 contador := contador + 1 fimenquanto senao repita escreva ("Idade do Dependente: ") leia (idade_dependente) ate (idade_dependente>0) contador := contador + 1 se (idade_dependente<=17) então bonus_funcionario3 := bonus_funcionario3 + 15 fimse fimse fimenquanto contador := 0 contador_conjuge := 0 quant_dependentes := 0 escreval //Funcionário 04 escreval ("Dados do Funcionário 4:") escreva ("Nome: ") leia (funcionario4) repita escreva ("Estado Civil (C= Casado | S= Solteiro): ") leia (estado_civil) ate (estado_civil="C") ou (estado_civil="S") repita escreva ("Possuí Dependentes? (N= Não | S= Sim): ") leia (dependente) ate (dependente="N") ou (dependente="S") se (dependente="S") então repita escreva ("Quantos? ") leia (quant_dependentes) ate (quant_dependentes>0) fimse enquanto (quant_dependentes>contador) faca repita escreva ("Tipo do Dependente (C= Cônjuge | X= Outros): ") leia (tipo_dependente) ate (tipo_dependente="C") ou (tipo_dependente="X") se (tipo_dependente="C") e (estado_civil="C") então enquanto (contador_conjuge<1) faca repita escreva ("Idade do Cônjuge: ") leia (idade_conjuge) ate (idade_conjuge>0) bonus_funcionario4 := bonus_funcionario4 + 20 contador_conjuge := contador_conjuge + 1 contador := contador + 1 fimenquanto senao repita escreva ("Idade do Dependente: ") leia (idade_dependente) ate (idade_dependente>0) contador := contador + 1 se (idade_dependente<=17) então bonus_funcionario4 := bonus_funcionario4 + 15 fimse fimse fimenquanto limpatela escreval (funcionario1,": Benefício de R$",bonus_funcionario1) escreval (funcionario2,": Benefício de: R$",bonus_funcionario2) escreval (funcionario3,": Benefício de: R$",bonus_funcionario3) escreval (funcionario4,": Benefício de: R$",bonus_funcionario4) fimalgoritmo Desde já, Obrigado.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...