Ir ao conteúdo
  • Cadastre-se

Algoritmo dividir valor monetário em moédas


Posts recomendados

Estou com uma questão de uma atividade de Lógica de programação  algoritmos que devemos dividir o valor monetário em moedas, li alguns tópicos na internet, li a questão, entendi +/- a questão mas minha maior duvida é como passar isso para o JAVA n sei como farei segue a questão a baixo:

 

Joana possui em seu poder algumas moedas com valore 1, 5, 10, 25, 50 centavos e algumas e 1 real, e precisa efetuar diversos pagamentos utilizando a menor quantidade de moedas possível para cada valor pago.

 

Para ajudar Joana, desenvolva um algoritmo que, a partir de um valor informado, indique a menor quantidade de moedas necessárias para Joana efetuar os pagamentos e como devem ser distribuídas as moedas.

 

Por exemplo: para Joana pagar uma despesa no valor de R$2,90 a menor quantidade de moedas utilizadas é seis (6) unidades, distribuídas da seguinte maneira: 2 moedas de 1 real, 1 moeda de 50 centavos, 1 moeda de 25 centavos, 1 moeda de 10 centavos e 1 moeda de 5 centavos.

Link para o comentário
Compartilhar em outros sites

A solução mais simples e direta é ir reduzindo do valor total a moeda de maior valor possível:

2,90

-1,00 =1,90

-1,00 =0,90

-0,50 =0,40

-0,25 =0,15

-0,10 =0,05

-0,05 =0,00

 

Enquanto for reduzindo o valor da moeda, acumule em um contador a quantidade de moedas daquele valor utilizadas, por exemplo: "moedaDe1Real++"

 

Isto é apenas 1 exemplo possível, também é possível utilizar divisão, mas como a questão é apenas lógica e não otimização o exemplo acima é suficiente.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

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