correção - uma ajuda em um programa

[color=blue]desculpas, eu coloquei o enunciado errado antes.[/color]

[color=red]Eu preciso simular um jogo de bingo, onde, eu tenho que sortear numeros aleatorios de 0 a 60 e imprimir a tabela (5x5). depois simular o sorteio , e imprimir qual linha foi preenchida primeiro e depois mostrar quando a cartela toda for preenchida.[/color]

[code]import javax.swing.*;
public class Bingo {
public Bingo() {
}
public static void main(String[] args) {
int c[][]=new int[5][5];
int s[]=new int[60];
int contl1=0, contl2=0, contl3=0, contl4=0, contl5=0, contt=0;
String cartela="";
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
double x=Math.random()*60;
c[i][j]=(int)x;
}
}
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
cartela=cartela+" “+c[i][j];
}
cartela=cartela+”\n";
}

   	JOptionPane.showMessageDialog(null,"Sua cartela é:"+"\n"+cartela);
   	
   	double x=Math.random()*59+1;
   	for(int i=0;i<5;i++){
   		for(int j=0;j<5;j++){
   	         
   		     if(c[i][j]==x){
   		     	contt++;
   			     if(i==1){
   			          contl1++;
   			           if(contl1==5)
   				          System.out.println("A 1º linha foi completada. ");
   			     }
   			     if(i==2){
   			           contl2++;
   			           if(contl2==5)
   				          JOptionPane.showMessageDialog(null,"A 2º linha foi completada. ");
   			     }
   			     if(i==3){
   			           contl3++;
   			           if(contl3==5)
   				          JOptionPane.showMessageDialog(null,"A 3º linha foi completada. ");
   			     }
   			     if(i==4){
   			           contl4++;
   			           if(contl4==5)
   				          JOptionPane.showMessageDialog(null,"A 4º linha foi completada. ");
   			     }
   			     if(i==5){
   			           contl5++;
   			           if(contl5==5)
   				          JOptionPane.showMessageDialog(null,"A 5º linha foi completada. ");
   				 }
   				 
   		     
             } 
          }
         }
}

}[/code]

sim sim, e qual o seu problema?

agora fez sentido…

mas tb nao espere q alguem vá resolver o programa pra vc…

poste a sua duvida… e a gente responde…

eu não quero que façam o trabalho para mim, eu só naum estou conseguindo fazer apartir da linha 24 que é preencher a tabela.

bom vamos ver…
se for um bingo de verdade… os numeros não poderiam repetir na cartela…
mas isso creio q vc vai pensar em resolver depois…

eu faria o seu programa da seguinte maneira:

Arraylist cartela, sorteadas … q vai marcar os numeros q a sua cartela possui, e os numeros q foram retirados no sorteio…
int[] total_linhas … q vai marcar o numero de numeros sorteados na linha X
int total_sorteado … q vai marcar o numero de numeros q possuem na sua cartela ateh agora

entao um loop q vai ser o programa…

[code]- retira uma bola

  • se a bola não for repitida
    • verifica se vc tem ela na cartela
    • se tiver
      • descobre a linha dela, e soma 1 na total_linhas dela, e soma 1 na total_sorteado
      • se alguma total_linhas chegar a 5… ela foi a primeira linha…
      • se total_sorteado chegar a 25… quer dizer q terminou a cartela
        • entao finaliza o programa, e mostra o size() da arraylist sorteadas
    • se não
      • adiciona ela na arraylist sorteadas
  • se nao
    • volta para sortear outra[/code]

fazendo de “cabeça” assim… parece q vai funcionar de forma correta o programa…

mais facil q essa dica… soh resolvendo o exercicio pra vc =)

eu acho que descobri um jeito
obrigado

não concegui

eu te dei a resposta praticamente…
basta programar ela =)

Repetir topico e feio, meu filho.

Bom vamos lá …

[color=blue]primeiro: [/color]

vc tá comparando int com double

if(c[i][j]==x) // linha 29

[color=blue]segundo:[/color]

vc tem que criar um loop para sortear as dezenas:

a partir da linha 24 faça alguma coisa do tipo:

boolean test = true; while (test){ int x = (int) (Math.random()*59+1);