Ir ao conteúdo
  • Cadastre-se

VisualG Valores de aumento de preço errados


Ir à solução Resolvido por Midori,

Posts recomendados

Comecei um curso de programação e o meu professor pediu para que eu fizesse um algoritmo em Portugol pelo VisualG mostrando o valor de custo de um produto, o seu valor de venda e um acréscimo de preço após percentual determinado pelo usuário. isso eu consegui fazer, não ha nenhum erro na execução do código, mas no resultado dele aparentemente sim. Por exemplo, um valor de 1700 recebeu um acréscimo percentual de 70%, o que deu 2390. não manjo de matemática, mas acho que está errado, errei alguma coisa na lógica. 

 

var
   custodoproduto: real
   valordevendadoproduto: real
   acrescimodepreco: inteiro

inicio
   escreva ("Digite o preço de custo:R$")
   leia(custodoproduto)
   escreva("Digite o valor de venda:R$")
   leia(valordevendadoproduto)
   escreva("Aumento no preço:")
   leia(acrescimodepreco)
   escreva("Valor com acréscimo:R$", custodoproduto + (valordevendadoproduto*acrescimodepreco/100))
fimalgoritmo

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Complementando:

 

Acrescentar 70% seria equivalente a "o valor atual + 70% desse valor atual".

 

Traduzindo:

1700 + 1700*(70%) = //"valor atual + 70% do valor atual"

1700 + 1700 * (70/100) = //representação da porcentagem em forma de fração

1700 * (1 + 70/100) //colocando o 1700 em evidência

 

Ou seja: tanto faz você fazer:

valorAcrescidoDe70Porcento = valorOriginal + valorOriginal*(70/100)

 

Com uma variável para a porcentagem:

valorAcrescidoDe70Porcento = valorOriginal + valorOriginal*(porcentagem)

 

 

 

Tanto fazer:

valorAcrescidoDe70Porcento = valorOriginal * (1 + 70/100)

ou

valorAcrescidoDe70Porcento = valorOriginal * (1 + porcentagem)

 

 

Essa segunda forma seria uma "simplificação"... uma fórmula que só precisa acessar a variável uma vez... pense assim: na matemática, "nada se cria, nada se perde, tudo se transforma". As "fórmulas" são (devem ser) sempre "100% equivalentes entre si".

 


 

 

Adendo:

Observe a expressão:

1700 * (1 + 70/100)

 

Fazendo a distributiva ficaria:

1700 + 1700 * (70/100)

 

Ou seja: "colocar um termo em evidência seria o oposto da distributiva.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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 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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!