Simulador de jogo com dados

Olá boa noite,

Estava fazendo o exercicio 7.17 do livro Java Como Programar do Deitel e fiquei com duvidas de como implementar a logica do arrays neste jogo de dados.

O Exercicio pede para que façamos um programa em que eh lançado dois dados 36 mil vezes e conta a frequencia da soma destes dois dados.

Peguei o exemplo que o livro traz e tentei modificar para que, em vez de um dado, lançasse dois e fizesse a soma.

Como eu coloco o 2º dado para o jogo, faça com que o programa some os valores dos dois dados e mostre sua frequencia?

public class RollDie
{
public static void main( String args[] )
{
Random randomNumbers = new Random(); // gerador de número aleatório
int frequency[] = new int[ 7 ]; // array de contadores de freqüência

  // lança o dados 6000 vezes; utiliza o valor do dado como índice de freqüência
  for ( int roll = 1; roll <= 6000; roll++ ) 
     ++frequency[ 1 + randomNumbers.nextInt( 6 ) ];

  System.out.printf( "%s%10s\n", "Face", "Frequency" );

  // gera saída do valor de cada elemento do array
  for ( int face = 1; face < frequency.length; face++ )
     System.out.printf( "%4d%10d\n", face, frequency[ face ] );

} // fim de main
} // fim da classe RollDie

O exemplo que está no livro é este. Caso eu esteja falando alguma besteira por favor me ignorem.

Estude os arrays bidimensionais, acho que uma solução seria somar as duas colunas do array bidimensional. Se por acaso voce queira fazer um exercicio mais “difícil”, seria desse jeito por ele em vez de contar a frequencia da soma, contaria a frequencia que os dados caem de um certo jeito(pois 3+3 é 6 como 2+4 é 6, os dados são diferentes mas a soma é a mesma)

Para solucionar o problema do jeito que o exercicio pede(soma) voce pode somar os dados já “dentro” do array, ex:
for ( int roll = 1; roll <= 6000; roll++ )
++frequency[ 1 + randomNumbers.nextInt( 6 ) ];

ficaria…
for ( int roll = 1; roll <= 6000; roll++ )
++frequency[ (1 + randomNumbers.nextInt( 6 )) + ( 1 + randomNumbers.nextInt( 6 )) ];

Espero que entenda minha solução e também que tenha interpretado corretamente o problema. Até + e bons estudos!

ops :S duplicado