Informática, perguntado por hugo2231guilherme, 1 ano atrás

UTILIZAR ALGORITMO TIPO PSEUDOCÓDIGO
Faça um programa para um terminal de auto-atendimento bancário que realiza saques em dinheiro. O programa deve solicitar ao usuário qual o valor a ser retirado e deve exibir na tela qual a quantidade de cada cédula será entregue ao usuário. O programa sempre ceve tentar utilizar o menor número possível de cédulas. A máquina possui apenas cédulas de R$ 10, 5 e 1

Soluções para a tarefa

Respondido por jplivrosng
0

Begin Programa

While(True)

Mensagem("Bem vindo ao banco.")

Mensagem("Para que possa efetuar um saque, por favor, insira seu cartão.")

Ler_Entrada(cartao_inserido)

If (cartao_inserido==True)

Função(perguntar_valor)

Else() ##comentario: o programa retorna ao início do loop.

##comentario: declarações de funções:

End Programa

Begin Função(perguntar_valor)

Mensagem("Qual a quantia deseja retirar?"

Ler_Entrada(valor_a_retirar)

Var(notas_de_10)

Var(notas_de_5)

Var(notas_de_1)

Var(segura_valor)

segura_valor=valor_a_retirar

For(n=0 ; 10*n < segura_valor ; )

notas_de_10=n

n=n+1

segura_valor=valor_a_retirar - notas_de_10

For(n=0 ; 5*n < (segura_valor; )

notas_de_5=n

n=n+1

valor_a_retirar - notas_de_10 - notas_de_5

For(n=0 ; n < segura_valor; )

notas_de_1=n

n=n+1

Mensagem("Voce receberá")

Mensagem(notas_de_10 " notas de 10 reais ")

Mensagem(notas_de_5 " notas de 5 reais ")

Mensagem(notas_de_1 " notas de 1 real ")

End Função(perguntar_valor)

---

---

---

O "motor do programa" é a função pergunta_valor que fica responsável pelas duas tarefas de perguntar a quantidade a ser sacada e de separar as notas na menor quantidade possível.

Para saber a menor quantidade possível, utilizei de exemplos para poder visualizar como dividir as notas.

Ao sacar 39 reais, o menor número de notas serão 3*10 reais + 1*5 reais + 4*1 reais que totalizam 8 notas.

Se ao invés de sair 1 nota de 5 saíssem 9 notas de 1 real, teríamos 3 notas de 10 + 9 notas de 1 que somam 12 notas.

Cada nota de 10 tem o valor de 2 notas de 5 e cada nota de 5 tem o valor de 5 notas de 1.

Perguntas interessantes