Ir ao conteúdo
  • Cadastre-se
LoroSP

VisualG Calcular novo salário utilizando funções

Posts recomendados

Boa tarde,

Recebi um exercício em pseudocódigo para utilizar no VisuAlg.

Porém por mais que eu tenha tentado, continua dando erro, pensei ser a Sintaxe mas

logo aparece o erro de novo. Segue o algoritmo do exercício:

 

Algoritmo "SUB-ROTINA-EX04"
//
// Função: calcular o novo salário
// Autor: Ana Fernanda
// Data: 14/01/2019
// seção de declarações de variáveis globais
var   s, sal, ns: real

   // a seguir a sub-rotina para calcular o aumento
   // como tem retorno será uma função

funcao aumento (sal: real):real
var
   aumento: real

inicio

   aumento <- sal * 0.1

   retorne aumento
   
fimfuncao

funcao imposto (sal: real):real

inicio

   imposto <- sal * 0.06

   retorne imposto
fimfuncao

// início do programa principal

inicio
   escreval ("Digite o salário ")
   leia (sal)
   s <- sal + aumento(sal)
   ns <- s - imposto(s)
   escreval ("Novo Salário = ",ns)
fimalgoritmo

 

Alguma mente descansada poderia verificar?

Agradeço antecipadamente.

LoroSP

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, LoroSP disse:

Porém por mais que eu tenha tentado, continua dando erro, pensei ser a Sintaxe mas

logo aparece o erro de novo.

 

Cada erro é uma erro.. seria interessante você informar qual erro está ocorrendo para o código que você postou... mas vamos lá:

 

Teste o código e deu o erro:

tela01.PNG

 

Ou seja: aumento é o nome da função, daí ele está aguardando um "(" para poder invocá-la. Na prática, o problema é que você definiu uma variável local com o mesmo nome da função... não pode, pois está dentro dum mesmo escopo (o programa não teria como diferenciar uma coisa da outra)... por sinal, era para dar erro logo na declaração da variável lá no var... (coisas do VisualG)

 

Simplesmente mude o nome da variável ou o nome da função.

 

Como é uma alteração simples, segue alguns exemplos para servir de base:

Algoritmo "SUB-ROTINA-EX04"
//Função: calcular o novo salário
//Autor: Ana Fernanda
//Data: 14/01/2019
var
   salario, novoSalario :real
   aumento, imposto :real

funcao calcularAumento (salario: real):real
var
   aumento: real
inicio
   aumento <- salario * 0.10
   retorne aumento
fimfuncao

funcao calcularImposto (salario: real):real
var
   imposto :real
inicio
   imposto <- salario * 0.06
   retorne imposto
fimfuncao

inicio
   escreval("Digite o salário ")
   leia(salario)
   aumento <- calcularAumento(salario)
   imposto <- calcularImposto(salario + aumento)
   novoSalario <- salario + aumento - imposto
   escreval ("Novo Salário = ", novoSalario)
fimalgoritmo

 

2#

Outra forma mais direta:

inicio
   escreval("Digite o salário ")
   leia(salario)
   novoSalario <- salario + calcularAumento(salario) - calcularImposto(salario + calcularAumento(salario))
   escreval ("Novo Salário = ", novoSalario)
fimalgoritmo

 

 

***

 

@LoroSP, mas temos um probleminha aí.. o novo salário do trabalhador NÃO leva desconto do imposto!!! Talvez você esteja misturando salário bruto (que seria o novo salário), com salário líquido (esse sim que já está com os descontos).

 

Por favor, poste o enunciado completo para analisarmos melhor.

 

No aguardo.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Simon Viegas  Agradeço pela atenção, 

 

Aqui segue o enunciado:

Exemplo 4 - Faça um algoritmo para calcular o novo salário sabendo que este
tem aumento de 10% e imposto é de 6% já sobre o salário reajustado. Os cálculos
devem ser feitos em funções.

 

E conforme fui verificar, o exemplo que me enviaram está com vários erros de sintaxe, além dos erros que

você detectou; falta de declaração de variáveis, nome de função igual ao que seria a variável, entre outros.

Creio que com esta correção, agora se pode utilizar o exercício como um exemplo.

Mais uma vez agradeço pelo auxílio.

 

Loro SP

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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...