Ajuda Array

3 respostas
N

Preciso que nessse meu programa gere um estatistica dizendo quais os numeros mais se se reptiram no resultado anteriores da mega sena.
Tipo se eu entra com 3 resultado da mega sena sendo
1º 6-1-4-22-23-24 , 2º 5-6-8-23-7-40 3º 6-25-37-41-48-28
ele tem que gerar um saida dizendo que os nº mas repitidos foram 6 e 23

import javax.swing.*;
 
 public class CadastraResultados
 {
 	private static int resulAnt[][];
 	
 	public CadastraResultados(int result[][])
 	{
 		resulAnt = result;
 	}
 	
 	public static void cadastro()
 	{
 		int n;
 		int pegaValor[][] = new int [resulAnt.length][6];
 	    
 		// validação nos cadastro
 		for (int lin=0; lin<resulAnt.length; lin++)
 		    for (int col=0; col<resulAnt[lin].length; col++)
 		    {
 		    
 		     // digite os  valores dos jogos 
 		    	n = Integer.parseInt(JOptionPane.showInputDialog("Entre com os valores\n"+
 		    							+(lin+1)+"º Resultado\n"+
 		    							+(col+1)+"º dezena\n"));
 			
 			if ((n > 0) && (n<61))
 				resulAnt[lin][col] = n;
 			else															 
 		    	resulAnt[lin][col] = Integer.parseInt(JOptionPane.showInputDialog("Numero errado (Valido:nº1 a 60)\n"+
 		    										"Entre com outro valor\n"+
 		    										+(lin+1)+"º cadastro\n"+
 		    										+(col+1)+"º valor\n"));
 		   
 		    // Matriz pra pegar os valores  	
 		    	 pegaValor[lin][col]=n;
 		      		    	     
 		   }
 		
 		//imprimir os valores    
 	 /*for (int lin=0; lin<resulAnt.length; lin++){
 		    for (int col=0; col<resulAnt[lin].length; col++){
 		      //System.out.printf("o valor %d\n",pegaValor[lin][col]);		      
 		      }
 		      }*/
 }
}

segue o metdo principal

import javax.swing.*;

public class MetodoaPrincipal
{
	public static void main(String args[])
 	{
 		
 		int n = Integer.parseInt(JOptionPane.showInputDialog("Entre com o Nº de Resultados da MEGA SENA (No minimo 2 resultados ) \n"));
 		
 		int Resultados[][] = new int[n][6];
 		
 		CadastraResultados resultadosAnt = new 	CadastraResultados(Resultados);
 		resultadosAnt.cadastro();

 		
 		
 		int Jogos[][] = new int[n][10];
 		
 		

 	}
 }

[color=darkred]Editado pelo moderador para incluir as tags Code pois sem elas ninguém consegue ler o código[/color]

3 Respostas

rogeriop80

Olá,

Não entendi qual a sua dúvida.

Abraços.

Rogério

N

não estou consseguino fazer umalogica pra saber quais os numeros mais sairam.Se vc rodar talvez entenda melhor

cassio
int ocorrencias[] = new int[60];
for(int i = 0; i < 61; i++) ocorrencias[i] = 0;

/*abaixo vc usa um vetor com uma posicao para cada numero.
Cada vez q um destes números é encontrado vc incrementa aquela posicao
no vetor de ocorrencias */

for(int i = 0; i < n; i++){
   for(int j = 0; j < 6; j++){
      ocorrencias[resultsAnt[i][j]+1]++


//Aqui vc verifica os que tiveram maior ocorrência

int maior1 = 0, maior2 = 0;
for(int i = 0; i < ocorrencias.length; i++){
   if(ocorrencias[i] > maior1) maior1 = ocorrencias[i];
   if(ocorrencias[i] > maior2 && ocorrencias[i] != maior1) maior2 = ocorrencias[i];
}

Qualquer duvida posta ai!ão testei isso ai não, fiz meio q de cabeça, pode ter algum probmea nos indices, testa ai!

Criado 20 de agosto de 2006
Ultima resposta 21 de ago. de 2006
Respostas 3
Participantes 3