Ir para conteúdo

POWERED BY:

Arquivado

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

Daniel Mineo

Algoritmo

Recommended Posts

Olá Pessoal bom dia, comecei a pouco a fazer um curso de informática com algoritmos, e me passaram esse exercicio para treinar, porém estou enrolado, não consegui entender a lógica disso, alguem pode me ajudar? segue o exemplo:

 

– Faça um Algoritmo que calcule o salário de um funcionário. O valor da Hora é de R$25,00.

 

Calcular também o excesso de pagamento, se houver,se o funcionário trabalhar mais que 40 horas semanais. O valor da hora extra é 50% a mais que o valor da hora normal. O algoritmo deverá descontar 12% de imposto, caso o salário bruto ultrapasse R$10.000,00. No final, mostre o salário liquido excesso de pagamento e valor do imposto.

 

 

Se puderem me auxiliar montando para eu visualizar as informações, agradeço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Algoritimo

Declare

horas_trabalhadas, salario_bruto, salario_liquido, imposto, excesso: REAL;

 

Leia horas_trabalhadas

se horas_trabalhadas > 40

salario_bruto  (horas_trabalhadas * 25 ) * 1,5

senao

salario_bruto  horas_trabalhadas * 25

fim de se

se salario_bruto > 10000

salario_liquido salario_bruto – 12%

imposto salario_bruto * 12%

fim de se

excesso salario_bruto – (horas_trabalhadas * 25);

escreva salario_liquido, excesso, imposto;

fim algoritimo

 

 

 

será q ta certo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, o usuário terá que digitar as horas de trabalho.

Você terá que multiplicar essas horas por 25 (valor do salário por hora).

 

Com isso você terá o salário bruto, certo?

Aí fica fácil, você precisará criar uma estrutura de seleção para verificar se a quantidade de horas ultrapassa 40. Outra para verificar se o salário bruto ultrapassa 10.000. E uma terceira para verificar o excesso.

 

Você está com problema na lógica ou no código?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, o usuário terá que digitar as horas de trabalho.

Você terá que multiplicar essas horas por 25 (valor do salário por hora).

 

Com isso você terá o salário bruto, certo?

Aí fica fácil, você precisará criar uma estrutura de seleção para verificar se a quantidade de horas ultrapassa 40. Outra para verificar se o salário bruto ultrapassa 10.000. E uma terceira para verificar o excesso.

 

Você está com problema na lógica ou no código?

 

 

Então Renan, eu estou fazendo a facul de redes, e tem essa matéria de contrução de algoritmos, e foi passado para desenvolvermos esse código, e eu quero aprender e saber desenvolver, se o q fiz esta correto sobre o que o problema aborda, já fico feliz, mas se tem algo a acrescentar, quero saber desenvolver o melhor possível, se vcs alterarem o código e me disserem o por q das alterações poderei entender melhor...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu não lembro muita coisa de algoritmo, mas algumas coisas que percebi no seu código:

se horas_trabalhadas > 40

Isso está errado (pelo que eu me lembre). A estrutura de seleção "SE" é feita desta forma:

SE horas_trabalhadas > 40 ENTAO
INICIO
 instrução 1;
 instrução 2;
 instrução 3;
FIMSE

 

 

Outra coisa que notei:

se salario_bruto > 10000
salario_liquido salario_bruto – 12%
imposto salario_bruto * 12%

O programa não irá entender porcentagem representada desta forma "12%". Você terá que mostrar de outro jeito, por exemplo: (12/100) ou 0.12. Ficando assim:

SE salario_bruto > 10000 ENTAO
INICIO
 salario_liquido:= salario_bruto - (12/100);
 imposto:= salario_bruto * (12/100);
FIMSE

ou

SE salario_bruto > 10000 ENTAO
INICIO
 salario_liquido:= salario_bruto - 0.12;
 imposto:= salario_bruto * 0.12;
FIMSE

 

Sobre as mensagens que irão aparecer para o usuário:

escreva salario_liquido, excesso, imposto;

Está errado. Você precisa colocar a mensagem entre aspas duplas e entre parenteses. Exemplo:

ESCREVA("O salario liquido é:", salario_liquido);

ou

ESCREVAL("O salario liquido é:", salario_liquido);

A diferença entre o "ESCREVA" e o "ESCREVAL":

ESCREVAL: posiciona o cursor na linha de baixo da mensagem.

ESCREVA: posiciona o cursor na frente da mensagem.

 

Refaça o código com essas dicas e poste-o aqui novamente ^_^

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.