considere um caica eletronico com apenas um repositorio
com capacidade para armazenar 1000 notas de 10 reais. Elabore um algoritmo
para ler um valor e fornecer a quantidade de notas correspondente a esse valor.
O algoritmo deve manter a quantidade de notas no repositorio
atualizada. caso o valor lido nao possa ser fornecido por falta de notas,
o algoritmo deve imprimir uma mensagem se o valor nao for multiplo
de 10. apos o tratamento do valor lido, o procedimento deve ser repetido.
o algoritmo deve parar quando um valor lido for negativo.
eu consegui pegar o valor que desejo retirar do caixa
por exemplo, Retirada = 50
var i = (Retirada / 10)
valorTotal = 100 - i;
mas agora nao sei como continuar, alguem pode me dar uma dica?
do
{
//qndopedidoformenorquezero,saidolaço.
//aquivocêrecebeovalordepedido,efazocontrole.pedidoéigualavalordosaque.
//aquivoceretiraaqntddenotasretiradanosaque,esubtrainototalde1000notas.
}while(pedido>=0);
L
Luiz_Fernando21
Mas e a questao do multiplos de 10?.
renatowerner
Um número é múltiplo de N se o resto da divisão desse número por N for igual a 0.
ribclauport
Amigo fiz uns testes aqui e creio que isso que voce está querendo espero que ajude:
packageb;importjavax.swing.JOptionPane;publicclassCaixa{intnota=0;intqtdNota=1000;inttotalRetirado=0;publicstaticvoidmain(String[]args){Caixac=newCaixa();do{Stringx=JOptionPane.showInputDialog("Entre com o valor do saque");try{if(x!=null){c.nota=Integer.parseInt(x);if(c.nota%10==0){c.qtdNota=c.qtdNota-c.nota/10;c.totalRetirado+=c.nota;JOptionPane.showMessageDialog(null,"Operação efetuada com sucesso\n Valor retirado "+x+"\n Notas restantes "+c.qtdNota);}elseif(c.nota<0){break;}else{JOptionPane.showMessageDialog(null,"Valor "+x+" não é multiplo de 10");}}}catch(NumberFormatExceptione){Stringsaida=x.equals("")?"\"\"":x;JOptionPane.showMessageDialog(null,"Entrada inválida para o valor: "+saida);}}while(c.nota>=0);JOptionPane.showMessageDialog(null,"Qtd Notas restantes "+c.qtdNota+" Valor retirado total: "+c.totalRetirado);}}
FabricioPJ
Entregar a coisa pronta para uma pessoa que está aprendendo, não vai ensina-la a pensar, mas sim a continuar pedindo ajuda.
renatowerner
Concordo plenamente.
ribclauport
Dar respostas vagas ajuda as pessoas a desistirem, e olhar o código dos outros é uma ótima maneira de se aprender…
rafaduka
Concordo planamente.
Concordo planamente.
FabricioPJ
Se a pessoa desiste por receber respostas vagas é porque ela é fraca. E concordo com você, olhar código ajuda a aprender, mas neste caso isso ta com cara de questão de faculdade, e o propósito da faculdade a fazer a pessoa aprender a pensar. Você deu a resposta, isso vai ajudar a pessoa a acertar a questão, mas não a aprender como chegar na resposta.
Enfim, essa é minha opinião e é o que eu acho… não tome como verdade absoluta, cada um tem a sua opinião.
ribclauport
Viche, você tem razão nem percebi esse ponto de resposta de faculdade, na verdade as vezes faço isso por que quanto estava começando, e aliás ainda estou, eu sempre me batia com respostas tipo “Mestre dos Magos”, mas era por que queria aprender e não resolver exercício de falcudade.
Desculpe.
renatowerner
ribclauport:
Dar respostas vagas ajuda as pessoas a desistirem, e olhar o código dos outros é uma ótima maneira de se aprender…
Eu respeito a sua opinião, porém se ele não tem força de vontade para resolver um problema simples desse é melhor ele nem entrar na área.
ribclauport
Bom, problemas simples na realidade são os que a gente sabe resolver né?
E gostaria que as pessoas tivesem mais cuidade em dizer “Não entraria na área”, pois no meu início de carreira ouvi isso, e realmente foi
muito difícil de superar, a vida não é assim não meu caro, a pessoa que hoje não sabe o que é um multiplo daqui um tempo pode ser seu
“chefe”, muito cuidado.
renatowerner
ribclauport:
Bom, problemas simples na realidade são os que a gente sabe resolver né?
E gostaria que as pessoas tivesem mais cuidade em dizer “Não entraria na área”, pois no meu início de carreira ouvi isso, e realmente foi
muito difícil de superar, a vida não é assim não meu caro, a pessoa que hoje não sabe o que é um multiplo daqui um tempo pode ser seu
“chefe”, muito cuidado.
Eu não falei que ele não entraria na área porque acha o problema muito difícil, disse q é melhor nem entrar na área se não tiver força de vontade para resolver esse tipo de problema, se você está aqui hoje é porque você teve essa força de vontade, e continua tendo, porque todo dia surgem novos problemas desafiadores.
ssh
ta vendo, o maluco deve ter resolvido e nem voltou mais aqui no tópico. rsrs.
as vezes eu preciso de um empurrão como você deu p/ ele, mas são com coisas bem mais complexas.
ribclauport
Verdade, o cara escafedeu…
L
Luiz_Fernando21
do
{//qndopedidoformenorquezero,saidolaço.//aquivocêrecebeovalordepedido,efazocontrole.pedidoéigualavalordosaque.//aquivoceretiraaqntddenotasretiradanosaque,esubtrainototalde1000notas.
}while(pedido>=0);
Realmente eu resolvi o problema, quer dizer, em partes, nao usei o codigo fonte pronto q o amigo postou, usei, q outro colega postou, e com isso montei minha logica, nao fikou 100%
mas quase xeguei la. Nao pedi pra ninguem fazer o problema pra mim, e sim pedi uma dica, de q forma seria melhor fazer, como poderia fazer. Vlw a todos q me ajudaram.
ribclauport
Bom, o legal é que perdi meu tempo procurando colocar um exemplo para o amigo, e pelo jeito o amigo não gostou, é isso?
Mas de qualquer forma consulte o código pronto para deixar o seu 100%, e um codigo pronto pode servir de consulta…
Todos o ajudaram, somente o código pronto que o atrapalhou…