Ajuda Questões

4 respostas
C

Olá galera,

Bem estou precisando de uma ajuda em relação ao um programa de uma lista de exercícios que estou fazendo e que não conseguir resolver.

O programa pede o seguinte:

  1. Implemente um programa que simule um jogo do Bingo. O programa deve gerar sucessivamente números aleatórios compreendidos entre 1 e 90 até que o usuário digite o caractere $. Para facilitar a verificação da cartela vencedora, o programa deve apresentar a lista ordenada de todos os números sorteados.

Abaixo segue o que tentei fazer, eu consigo gerar os números, só que não entendi ao certo como o programa ficará gerando números até o usuário digitar $. E também não sei fazer lista ordenada…me ajudem! :frowning:

import java.util.Random;
import java.util.Scanner;
public class Q6 {
    public static void main (String[]args){
    Scanner leitor = new Scanner (System.in);
    int escolha;
    String letra = null;
    int op = 0;
    
        
     System.out.println ("Olá, Bem vindo ao Jogo do Bingo!");
     System.out.println();
     System.out.println ("Escolha '1' para SIM & '$' para sair: ");
     escolha = leitor.nextInt();
     
     if (escolha == 1){
     //instância um objeto da classe Random usando o construtor básico
     Random gerador = new Random();
     for (int i = 1; i < 90; i++){
     System.out.print ("Deseja gerar um número?");
     if (op == 1){
        //imprime sequência de 10 números inteiros aleatórios entre 0 e 90
        for (int j = 1; j < 90; j++){
        System.out.println(gerador.nextInt());
     }
     }
     }
     if (letra.equalsIgnoreCase("$")){
         System.exit(0);     
     }
    
     
    }
  }
}

Se alguém puder me ajudar agradeço!

4 Respostas

R

bem para começar falta um ‘while’ aí, em que vc monta um ciclo onde ele sempre pergunta se quer um 1 ou $. aí quando 1, gera o número… e quando o $ sai do programa… que mais? põe os números gerados na lista e depois ordena…

Fiz um jogo de bingo, com DefaultModelList, senão me engando, e vc usa o objeto dela com o .add

dentro deste vasto programa( que está em um link dentro do link do tópico abaixo) tenho um jogo de bingo, que dá para dar uma olhada…
em um pacote fácil de achar… com o nome bingo.

porém o dito acima, já dá bases para continuar e resolver algo mais por aí.

DefaultModelList tem vários métodos próprios para lidar com listas. Existem muitos tipos de lista (ou formas de fazer(guardar) uma lista) , portanto pode escolher a que mais lhe agrada.

R

outra dica, é primeiro ir construindo a lista (com .add, por exemplo, depende a lista escolhida… ) ,

e depois ordenar só na hora que for exibir a mesma…

viniciosarodrigues
Olá Caio, você vai precisar construir uma lista como o raghy citou acima, ou então usar o próprio ArrayList, como no exemplo abaixo. Eu indico criar a própria lista, até pq é muito bom pra treinar.
public static void main(String[] args) {

		// Cria uma variável do tipo booleana para usar como condicional
		boolean possui = true;
		// Cria uma Lista de Arrays do tipo inteiro para armazenar os números.
		ArrayList<Integer> lista = new ArrayList<Integer>();

		for (int cont = 0; lista.size() < 10; cont++) {
			// Instancia um número inteiro e aleatório
			int numero = new Random().nextInt(90);

			// Testa se já existe número na lista e se o número é maior que zero
			if (lista.size() == 0 && numero > 0)
				// Adiciona um número a lista
				lista.add(numero);

			// Testa se existe números na lusta e se o número é maior que zero
			else if (lista.size() > 0 && numero > 0) {
				// Cria um laço para percorrer toda a lista
				for (int cont2 = 0; cont < lista.size(); cont++) {
					// Verifica se já possui o número aleatório
					if (lista.get(cont2) != numero) {
						// Altera a condição
						possui = false;
					}
				}
				// Adiciona o número a lista se ele não estiver sido sorteado
				if (possui)
					lista.add(numero);
			}
		}
	}
Porém ele não ordena, é necessário criar um algorítimo de ordenação, como o SelectionSort, QuickSort, BubleSort e etc... Como eu já dei uma base, o resto é com você... Dá uma estudada em estrutura de dados, com certeza você vai achar.
C

raghy:
bem para começar falta um ‘while’ aí, em que vc monta um ciclo onde ele sempre pergunta se quer um 1 ou $. aí quando 1, gera o número… e quando o $ sai do programa… que mais? põe os números gerados na lista e depois ordena…

Fiz um jogo de bingo, com DefaultModelList, senão me engando, e vc usa o objeto dela com o .add

dentro deste vasto programa( que está em um link dentro do link do tópico abaixo) tenho um jogo de bingo, que dá para dar uma olhada…
em um pacote fácil de achar… com o nome bingo.

porém o dito acima, já dá bases para continuar e resolver algo mais por aí.

DefaultModelList tem vários métodos próprios para lidar com listas. Existem muitos tipos de lista (ou formas de fazer(guardar) uma lista) , portanto pode escolher a que mais lhe agrada.

Eu cheguei a baixar seu jogo…mas ele ta em .jar não em projeto netbeans ou eclipse.
Queria dar uma olhada em seu código para ver onde estou pecando…

Quando a estrutura de dados sou péssimo em criar o método de ordenação rs…
Mesmo assim, valeu!

Criado 16 de junho de 2014
Ultima resposta 16 de jun. de 2014
Respostas 4
Participantes 3