Desculpem lá… mas axo k me enganei a por o post… e colokei no nivel avançado… penso k isto seja simples… mas n tou a conseguir resolver tou a desesperar… quero fazer um jogo (trabalho de faculdade) mas n consigo colocar um ciclo reparem bem…
InputStreamReaderleitor=newInputStreamReader(System.in);BufferedReaderinput=newBufferedReader(leitor);System.out.print("Quantas moedas o jogador 1 quer retirar?");Stringtexto=input.readLine();intr=Integer.parseInt(texto);intm=22;longn=m-r;if(r<=3)System.out.println("Tem "+n+" moedas");elseSystem.out.println("Não pode retirar mais que 3 moedas.");if(n<=0)System.out.println("Perdeu o jogo. Tirou a ultima moeda");System.out.print("Quantas moedas o jogador 2 quer retirar?");Stringtext=input.readLine();ints=Integer.parseInt(text);longl=n-s;if(s<=3)System.out.println("Tem "+l+" moedas");elseSystem.out.println("Não pode retirar mais que 3 moedas");if(l<=0)System.out.println("Perdeu o jogo. Tirou a ultima moeda");}
}
o que é k eu faço para se a pessoa n retirar as moedas certas voltar a jogar? e como é k faço outro ciclo de modo a acontecer sempre isso até chegar a ter 0 moedas…
Obrigado por qualquer ajuda…
Coloque seu “ciclo” dentro de while(true), quando eles estiverem no estado de parar dê um break.
P
PinknysPJ
obrigado… o problema é k eu não percebo nada de Java é a primeira vez que tou a fazer alguma coisa… e já cheguei até aki… mas agora n sei mais… Nem sei como usar o while tentei mas n sei mm k fazer…
if(r<=3)System.out.println("Tem "+n+" moedas");elseSystem.out.println("Não pode retirar mais que 3 moedas.");if(n<=0)System.out.println("Perdeu o jogo. Tirou a ultima moeda");break;}while(true){System.out.print("Quantas moedas o jogador 2 quer retirar?");Stringtext=input.readLine();ints=Integer.parseInt(text);longl=n-s;if(s<=3)System.out.println("Tem "+l+" moedas");elseSystem.out.println("Não pode retirar mais que 3 moedas");if(l<=0)System.out.println("Perdeu o jogo. Tirou a ultima moeda");break;}}}
}
Fiz assim e não funciona… pk não tem lógica… tenho de trocar o programa todo???
Obrigado
B
BrunoCarloPJ
Acho que não… só que vc inicializou algumas variáveis dentro do while… vê se eu entendi o jogo: se tem 22 moedas, o jogador que tirar a ultima moeda perde, cada jogador só pode tirar menos de 3 moedas por vez. é isso? perguntas, se pode tirar um numero negativo de moedas?
se for faça o seguinte:
//inicializa as variáveis “globais”, que servem tanto para o primeiro, quando para o segundo jgador, tipo a de moedas.
começe o while:
// de a chance para o primerio jogador, com a condição de parada bem definida, isto é, ele só para quando acabar as moedas e ele perder ou ele tira uma moeda e se não perder é a vez do segundo jogador?
// de a chance para o segundo jogador.
P
PinknysPJ
olá… obrigado pela paciência… eu sou de portugal … por isso as vezes fica meio complicado de perceber algumas palavras… mas o jogo é assim temos 22 moedas e temos dois jogadores cada jogador pode retirar 3 ou menos moedas e é um jogador de cada vez… o jogador k retirar a ultima perde… por isso não é possivel retirar numeros negativos… pois isso seria a mm coisa k repor moedas e isso n vale…