O caixa eletronico
Conhecendo a fama internacional do pessoal, o banqueiro contratou os alunos de Construção de Algoritmos para escrever um programa que mantivesse a contabilidade destes caixas e controlasse o número de notas necessárias para efetivar os saques.
Todas as manhãs, a central fornece aos caixas notas de 100, 50, 10, 5 e 1 imaginários (a moeda das Ilhas Caymano). Todos os saques devem ser processados de maneira a utilizar o menor número possível de notas. Por exemplo, para um saque de 350 imaginários, o caixa deve entregar, se disponíveis, 3 notas de 100 e uma de 50 (em vez de outras eventuais possibilidades como 7 notas de 50). Para que o caixa eletrônico processe depósitos é necessário que o usuário especifique a quantidade de notas (de cada tipo) que está sendo fornecida.
Faça um programa em C que simule um dia de funcionamento de um destes caixas:
(1) Lê a quantidade inicial de notas de 100, 50, 10, 5 e 1.
(2) Lê um número inteiro n > 1 indicando o número de operações a serem realizadas. Para cada operação é dado o código da operação: 0 para saque e 1 para depósito. Tratando-se de saque, é fornecido o valor do saque (um número inteiro não-negativo); para depósitos, é fornecido o número de notas de 100, 50, 10, 5 e 1 que compõem o depósito.
(3) Imprime, a cada operação realizada, o número de notas (para cada tipo) em caixa e o saldo atual.
(4) Rejeita os saques para os quais não há dinheiro suficiente em caixa ou não há as notas necessárias.
Por exemplo, se o caixa tem apenas uma nota de 100 e o usuário deseja retirar 65 não há como efetivar o saque, embora haja dinheiro suficiente no caixa.
O seu programa deve ter uma saída para tela como a do exemplo a seguir, para simular o funcionamento do caixa eletrônico. Sua saída será exibida ao dono do banco a