Ir ao conteúdo
  • Cadastre-se

brenno00

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

2
  1. Olá, pensei em disponibilizar esse algoritmo em VisualG, pois quando tinha algumas dúvidas sobre ele, infelizmente, não encontrei muita coisa. Vamos ao problema: Elabore um programa no Visualg que calcule o troco a ser fornecido em uma compra, ao ser informado o valor da compra e o valor pago. Além disso, o algoritmo deve fornecer menor número de cédulas de 2,5,10,20,50 e 100 reais, de moedas de 1 real, e de moedas de 1,5,10,25 e 50 centavos a ser dado de troco. Vamos ao código: algoritmo "TROCO" var //Valor da compra e Valor pago V1, V2 : real // X é o troco e a variável M é utilizada para fazer a troca de Real para inteiro X, M : real //Y é o valor inteiro do troco utilizado para as cédulas Y : inteiro //Z é o valor inteiro das moedas (multiplicado por 100) Z : inteiro //N são as cédulas N50, N20, N10, N5, N2, N1: inteiro //M são as moedas M50, M25, M10, M5, M1 : inteiro Inicio Escreval ("Valor da compra:") leia (V1) Escreval ("Valor Pago:") leia (V2) //Aqui vamos obter o troco X<- V2-V1 //Aqui vamos obter apenas a parte inteira do troco. Exemplo : X= 13,45 , logo o Y= 13 Y<- int(X) //Aqui vamos pegar a parte "quebrada" do troco, ou seja, as moedas. É o inverso da função anterior. M<- X-Y //Aqui vamos transformar o número "quebrado" em número inteiro, ou seja, transforma-lo de Real para Inteiro. M<- M*100 //Aqui o Z (troco quebrado) recebe a parte inteira de M Z<- int(M) Escreval ("Troco=",X) Se (V1 > V2) então N50<- (Y div 50) Y<- (Y mod 50) N20<- (Y div 20) Y<- (Y mod 20) N10<- (Y div 10) Y<- (Y mod 10) N5<- (Y div 5) Y<- (Y mod 5) N2<- (Y div 2) Y<- (Y mod 2) N1<- (Y div 1) Y<- (Y mod 1) fimse Se n50>0 então Escreval (n50,"_", "Nota(s) de 50") fimse Se n20>0 então Escreval (n20,"_", "Nota(s) de 20") fimse Se n10>0 então Escreval (n10,"_", "Nota(s) de 10") fimse Se n5>0 então Escreval (n5,"_", "Nota(s) de 5") fimse Se n2>0 então Escreval (n2,"_", "Nota(s) de 2") fimse Se n1>0 então Escreval (n1,"_", "Nota(s) de 1") fimse Se (V2 > V1) então M50 <- (Z div 50) Z <- (Z mod 50) M25 <- (Z div 25) Z <- (Z mod 25) M10 <- (Z div 10) Z <- (Z mod 10) M5 <- (Z div 5) Z <- (Z mod 5) M1 <- (Z div 1) Z <- (Z mod 1) fimse Se M50>0 então Escreval (M50,"_", "Moeda(s) de 50 centavos") fimse Se M25>0 então Escreval (M25,"_", "Moeda(s) de 25 centavos") fimse Se M10>0 então Escreval (M10,"_", "Moeda(s) de 10 centavos") fimse Se M5>0 então Escreval (M5,"_", "Moeda(s) de 5 centavos") fimse Se M1>0 então Escreval (M1,"_", "Moeda(s) de 1 centavos") fimse fimalgoritmo Bons estudos !!

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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!