Jump to content
Psilvestre

Voltar ao inicio

Recommended Posts

Psilvestre

Boas, eu estou a começar com Java e gostava que me ensinassem uma coisa:

eu tenho o seguinte programa:

import java.lang.Math;
import java.util.Scanner;

public class Jogo {
public static void main (String args[])
throws java.io.IOException
{
Scanner resp = new Scanner (System.in);
double d = Math.random();
int x = (int) (100*d);
int resposta;
int tentativas;


System.out.println("Introduza um número (1-100):");
    resposta = resp.nextInt();
    tentativas = 0;
    tentativas++;


while(resposta != x){
if (resposta < x){
	System.out.println("Tente um numero mais alto!");
	System.out.println("Introduza um numero (1-100):");
	resposta = resp.nextInt();
	tentativas++;
	if (resposta == x){
		System.out.println("Parabens você ganhou em " + tentativas + " tentativas!");
		System.out.println("Gostaria de jogar outra vez?(S/N)");
		char c = (char) System.in.read();
		switch (c){
		case 's':
		case 'S':
			System.out.println("Você respondeu SIM");
			break;
		case 'n':
		case 'N':
			System.out.println("Você respondeu NÃO");
		break;

	}
}
if (resposta > x){
	System.out.println("Tente um numero mais baixo!");
	System.out.println("Introduza um numero (1-100):");
	resposta = resp.nextInt();
	tentativas++;
	if (resposta == x){
		System.out.println("Parabens você ganhou em " + tentativas + " tentativas!");
		System.out.println("Gostaria de jogar outra vez?(S/N)");
		char c = (char) System.in.read();
		switch (c){
		case 's':
		case 'S':
			System.out.println("Você respondeu SIM");
			break;
		case 'n':
		case 'N':
			System.out.println("Você respondeu NÃO");
		break;
	}

}

}
}
}
}
}

Eu queria saber como posso voltar ao topo do programa depois de  o utilizador

selecionar que quer jogar outra ves...

Agradecia que me ajudassem

PS: já agora isto foi feito em Eclipse 

Share this post


Link to post
Share on other sites
jpaulino

Atenção aos títulos dos tópicos, pois são contra as regras do fórum!

2) Procedimentos e recomendações na criação de tópicos:

  • 2.1) Criar títulos relacionados com a própria dúvida do utilizador e nunca com frases do género "Please help meeeee...." ou "duvida urgentíssima". Tópicos com este tipo de títulos estão sujeitos a serem bloqueados e o autor do mesmo avisado sobre o mesmo.

Share this post


Link to post
Share on other sites
Knitter

É para isso é que servem os ciclos. Com um ciclo que englobe todo o programa, ou pelo menos a parte que queres repetir, podes fazer o que pretendes. Terás de ter atenção que precisas de uma condição de saída adequada e que isso implica mais algum código além do ciclo para leitura da opção de saída.

Share this post


Link to post
Share on other sites
Psilvestre

Eu esquecime de mencionar uma coisa...Eu queria mesmo era usar labels, continues ou breaks pois quando eu tento usalos no switch dame um erro disendo : "label nome_da_label is missing"

ja agora o codigo e algo do tipo:

            label:

System.out.println("Introduza um número (1-100):");

    resposta = resp.nextInt();

    tentativas = 0;

    tentativas++;

e  depois dentro do switch que esta referido no post faço:

switch ©{

case 's':

case 'S':

System.out.println("Você respondeu SIM");

break label;

alguem pode ajudar um noob ? :confused:

Share this post


Link to post
Share on other sites
Knitter

Não uses labels. Especialmente se está a começar a programar.

Labels promovem um tipo de programação esparguete errada e muito fácil de complicar o que é simples. Não há razão nenhuma para usares labels nos problemas de programação que encontrarás.

O que apresentaste é feito, correctamente, com ciclos, nunca com labels.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.