`
Como colocar uma função para o meu código para quando o usuário quiser jogar novamente ele usa uma tecla e volta o programa novamente?Tipo um “Jogar novamente”?E meu código pode ficar mais organizado? Se alguém quiser dar dicas fica a vontade!!!
> import java.util.Random;
import java.util.Scanner;
public class JogoForcaJava {
public static char[] traco;
public static void main (String args[])
{
System.out.println("Dica: Time de futebol");
char jogo[];
Scanner sc = new Scanner(System.in);
Random r = new Random();
String[] vet = { "corinthians"};
String palavra = vet[r.nextInt(vet.length)];
int contagem = palavra.length();
char[] Vetor=palavra.toCharArray();
char[] traco = palavra.toCharArray();
for(int i=0;i<traco.length;i++)
{
traco[i] = '_';
System.out.print(traco[i]);
}
for (int i=1; i<=6; i++)
{
System.out.printf ("\nAdivinhe uma letra:");
char letra= sc.next().charAt(0);
for (int j=0;j<Vetor.length; j++)
{
if(letra == traco[j])
{
System.out.println("Você já digitou essa letra.");
}
else
{
if(letra==Vetor[j])
{
traco[j]=letra;
i--;
System.out.printf("LETRA CORRETA!\n");
}
}
}
System.out.print(traco);
switch(i+0)
{
case 1: System.out.println("");
System.out.println("");
System.out.println(" ************************");
System.out.println(" ************************");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** *** VOCÊ ERROU,RESTA 5 VIDAS*** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
break;
case 2: System.out.println("");
System.out.println("");
System.out.println(" ************************");
System.out.println(" ************************");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** .. ");
System.out.println(" *** .. ");
System.out.println(" *** .. *** VOCÊ ERROU,RESTA 4 VIDAS*** ");
System.out.println(" *** .. ");
System.out.println(" *** .. ");
System.out.println(" *** .. ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
break;
case 3: System.out.println("");
System.out.println("");
System.out.println(" ************************ ");
System.out.println(" ************************ ");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** .. ");
System.out.println(" *** / .. ");
System.out.println(" *** / .. *** VOCÊ ERROU,RESTA 3 VIDAS*** ");
System.out.println(" *** / .. ");
System.out.println(" *** * .. ");
System.out.println(" *** .. ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
break;
case 4: System.out.println("");
System.out.println("");
System.out.println(" ************************ ");
System.out.println(" ************************ ");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** .. ");
System.out.println(" *** / ..\\ ");
System.out.println(" *** / .. \\ *** VOCÊ ERROU,RESTA 2 VIDA*** ");
System.out.println(" *** / .. \\ ");
System.out.println(" *** * .. * ");
System.out.println(" *** .. ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
break;
case 5: System.out.println("");
System.out.println("");
System.out.println(" ************************ ");
System.out.println(" ************************ ");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** .. ");
System.out.println(" *** / .. \\ ");
System.out.println(" *** / .. \\ *** VOCÊ ERROU,RESTA 1 VIDA*** ");
System.out.println(" *** / .. \\ ");
System.out.println(" *** * .. * ");
System.out.println(" *** .. ");
System.out.println(" *** / ");
System.out.println(" *** / ");
System.out.println(" *** / ");
System.out.println(" *** _/ ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
break;
case 6: System.out.println("");
System.out.println("");
System.out.println(" ************************");
System.out.println(" ************************");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** .. ");
System.out.println(" *** / .. \\ ");
System.out.println(" *** / .. \\ *** VOCÊ PERDEU*** ");
System.out.println(" *** / .. \\ ");
System.out.println(" *** * .. * ");
System.out.println(" *** .. ");
System.out.println(" *** / \\ ");
System.out.println(" *** / \\ ");
System.out.println(" *** / \\ ");
System.out.println(" *** _/ \\_");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
System.out.println("Você perdeu!!! A palavra não está certa.\n");
}
System.out.printf("\n");
if((new String(palavra)).equals(new String(traco)))
{
System.out.println("Parabéns!! Você ganhou.\n");
break;
}
}
}
}`
Dica: Procure quebrar seu programa em partes pequenas, fica bem mais fácil.
Veja o exemplo abaixo:
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
public class JogoForcaJava {
private static final Scanner ENTRADA = new Scanner(System.in);
private static final int TENTATIVAS = 6;
public static void main(String args[]) {
try {
String dica = "Dica: Time de futebol";
String[] palavras = { "corinthians" };
JogoForcaJava jogoForca = new JogoForcaJava(dica, palavras);
jogoForca.executar();
} catch (Throwable t) {
t.printStackTrace();
} finally {
System.exit(0);
}
}
private final String dica;
private final String[] palavras;
public JogoForcaJava(String dica, String[] palavras) {
this.dica = dica;
this.palavras = palavras;
}
public void executar() {
do {
jogar();
} while (continuar());
}
private void jogar() {
System.out.println(dica);
final String palavra = palavras[new Random().nextInt(palavras.length)];
char[] letras = palavra.toCharArray();
char[] tracos = new char[palavra.length()];
Arrays.fill(tracos, '_');
System.out.println(tracos);
for (int i = 0; i < TENTATIVAS; i++) {
System.out.printf("\nAdivinhe uma letra:");
char letra = ENTRADA.next().charAt(0);
for (int j = 0; j < letras.length; j++) {
if (letra == tracos[j]) {
System.out.println("Você já digitou essa letra.");
} else {
if (letra == letras[j]) {
tracos[j] = letra;
i--;
System.out.printf("LETRA CORRETA!\n");
}
}
}
System.out.print(tracos);
desenhaBoneco(i + 1);
System.out.println();
String resposta = new String(tracos);
if (palavra.equals(resposta)) {
System.out.println("Parabéns!! Você ganhou.\n");
return;
}
}
System.out.println("Você perdeu!!! A palavra não está certa.\n");
}
private boolean continuar() {
System.out.println("Deseja continuar? [s]im ou [s]ao?\nResposta: ");
char letra = ENTRADA.next().charAt(0);
return letra == 's';
}
private void desenhaBoneco(int tentativa) {
switch (tentativa) {
case 1:
desenhaCabeca();
return;
case 2:
desenhaTronco();
return;
case 3:
desenhaBracoEsquerdo();
return;
case 4:
desenhaBracoDireito();
return;
case 5:
desenhaPernaEsquerda();
return;
case 6:
desenhaPernaDireita();
return;
}
}
private void desenhaCabeca() {
System.out.println("");
System.out.println("");
System.out.println(" ************************");
System.out.println(" ************************");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** *** VOCÊ ERROU,RESTA 5 VIDAS*** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
}
private void desenhaTronco() {
System.out.println("");
System.out.println("");
System.out.println(" ************************");
System.out.println(" ************************");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** .. ");
System.out.println(" *** .. ");
System.out.println(" *** .. *** VOCÊ ERROU,RESTA 4 VIDAS*** ");
System.out.println(" *** .. ");
System.out.println(" *** .. ");
System.out.println(" *** .. ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
}
private void desenhaBracoEsquerdo() {
System.out.println("");
System.out.println("");
System.out.println(" ************************ ");
System.out.println(" ************************ ");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** .. ");
System.out.println(" *** / .. ");
System.out.println(" *** / .. *** VOCÊ ERROU,RESTA 3 VIDAS*** ");
System.out.println(" *** / .. ");
System.out.println(" *** * .. ");
System.out.println(" *** .. ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
}
private void desenhaBracoDireito() {
System.out.println("");
System.out.println("");
System.out.println(" ************************ ");
System.out.println(" ************************ ");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** .. ");
System.out.println(" *** / ..\\ ");
System.out.println(" *** / .. \\ *** VOCÊ ERROU,RESTA 2 VIDA*** ");
System.out.println(" *** / .. \\ ");
System.out.println(" *** * .. * ");
System.out.println(" *** .. ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
}
private void desenhaPernaEsquerda() {
System.out.println("");
System.out.println("");
System.out.println(" ************************ ");
System.out.println(" ************************ ");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** .. ");
System.out.println(" *** / .. \\ ");
System.out.println(" *** / .. \\ *** VOCÊ ERROU,RESTA 1 VIDA*** ");
System.out.println(" *** / .. \\ ");
System.out.println(" *** * .. * ");
System.out.println(" *** .. ");
System.out.println(" *** / ");
System.out.println(" *** / ");
System.out.println(" *** / ");
System.out.println(" *** _/ ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
}
private void desenhaPernaDireita() {
System.out.println("");
System.out.println("");
System.out.println(" ************************");
System.out.println(" ************************");
System.out.println(" *** *** ");
System.out.println(" *** * * * ");
System.out.println(" *** * * ");
System.out.println(" *** * * * ");
System.out.println(" *** .. ");
System.out.println(" *** / .. \\ ");
System.out.println(" *** / .. \\ *** VOCÊ PERDEU*** ");
System.out.println(" *** / .. \\ ");
System.out.println(" *** * .. * ");
System.out.println(" *** .. ");
System.out.println(" *** / \\ ");
System.out.println(" *** / \\ ");
System.out.println(" *** / \\ ");
System.out.println(" *** _/ \\_");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" *** ");
System.out.println(" ***** ");
}
}
1 curtida
obrigado pela dica amigo !!
Ficou até mais fácil de compreender!
1 curtida
Será que você poderia me ajudar nesse novo código ? Problemas com organização do código
Lamento, não posso pois as alterações são muito parecidas com o que já te postei no problema atual.
É só fazer a mesma coisa.
Bons estudos.