Programa Mega-sena

Visualização melhor!!!

[code]Codigo da loteria
/*

  • To change this template, choose Tools | Templates
  • and open the template in the editor.
    */

package init;

//classes importadas
import javax.swing.;
import java.awt.
;
import java.awt.event.*;
import java.text.ParseException;
import javax.swing.text.MaskFormatter;
import java.util.Random;

/**
*

  • @author Administrador
    */

//classe Bicho
public class Bicho extends JFrame {

//cria JLabel
JLabel lbQntNumeros, lbQntJogos, lbNumMax, lbNumSorteados;
//cria campo para diigitar nome do usuário
JFormattedTextField edQntNumeros, edQntJogos, edNumMax;
MaskFormatter msQntNumeros, msQntJogos, msNumMax;
//cria botões
JButton btSortear;
//Cria listas
JList lNumSorteados;

//array que armazena os valores de cada jogo
int jogo[] = new int[99];

//array que armazena todos os jogos
String listaJogos[] = new String[9999];

//construtor da classe
public Bicho() {

//titulo da janela
super(“Sorteia números”);

ImageIcon icone = new ImageIcon(“imagem.jpg”);
setIconImage(icone.getImage());

for(int i = 0; i < listaJogos.length; ++i)
listaJogos[i] = "Jogo " + String.valueOf(1+i) + ": ";

//configura a quantidade de colunas e linhas
setLayout(null);

//cor do formulario
Container fundo = getContentPane();
//fundo.setBackground(Color.red);

/** Inicializa os JLabel /
lbQntNumeros = new JLabel(“Quantidade de números”);
lbQntJogos = new JLabel(“Quantidade de jogos”);
lbNumMax = new JLabel(“Número de 1 até…”);
lbNumSorteados = new JLabel(“Números sorteados”);
/
* fim JLabel */

/** Inicializa os JList /
lNumSorteados = new JList(listaJogos);
lNumSorteados.setVisibleRowCount(5);
JScrollPane barraRolagem = new JScrollPane(lNumSorteados);
lNumSorteados.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
/
* fim JList */

/** Inicializa Mascaras */
try {

msQntNumeros = new MaskFormatter("##");
msQntJogos = new MaskFormatter("####");
msNumMax = new MaskFormatter("##");

}
catch(ParseException excp) {}
/** Fim Mascaras */

/** Inicializa JFormattedTextField /
edQntNumeros = new JFormattedTextField(msQntNumeros);
edQntJogos = new JFormattedTextField(msQntJogos);
edNumMax = new JFormattedTextField(msNumMax);
/
* fim JTextField e JPasswordField */

/** inicializa os JButton /
btSortear = new JButton(“Sortear”);
/
* fim JButton */

/** Posiciona os componentes */
//JLabel
lbQntNumeros.setBounds(20, 20, 300, 20);
lbQntJogos.setBounds(20, 70, 300, 20);
lbNumMax.setBounds(20, 120, 300, 20);
lbNumSorteados.setBounds(200, 20, 300, 20);

//JFormattedTextField
edQntNumeros.setBounds(20, 40, 150, 20);
edQntJogos.setBounds(20, 90, 150, 20);
edNumMax.setBounds(20, 140, 150, 20);

//JButton
btSortear.setBounds(225, 190, 150, 20);

//JList
barraRolagem.setBounds(200, 40, 370, 120);
/** fim da posição dos componentes */

//botão padrão ao apertar ENTER
getRootPane().setDefaultButton(btSortear);

/** Ação JButton /
btSortear.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
sorteador();
lNumSorteados.repaint();
}
});
/
* fim Ação JButton */

/** insere os componentes no formulário */
//JLabel
add(lbQntNumeros);
add(lbQntJogos);
add(lbNumMax);
add(lbNumSorteados);

//JTextField
add(edQntNumeros);
add(edQntJogos);
add(edNumMax);

//JButton
add(btSortear);

//JList
add(barraRolagem);
/** fim da inserção de componentes */

//tamanho do formulário
setSize(600, 250);

//torna o formulário visível
setVisible(true);

//não permite redimencionamento do formulário
setResizable(false);

//mostra o furmulário sempre no centro da tela
setLocationRelativeTo(null);

} //fim do construtor

/**

  • @param args the command line arguments
    */
    public static void main(String[] args) {
    // TODO code application logic here

Bicho app = new Bicho();

app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

} //fim do método main

public void sorteador() {

//cria objeto Random e atribui a numeroAleatorio
Random numeroAleatorio = new Random();

//String para armazenar os resultados do array jogo acumulado
String jogoFinal = “”;

//cria Strings e atribui os valores dos JFormattedTextField
String qntNumeros = edQntNumeros.getText();
String qntJogos = edQntJogos.getText();
String numMax = edNumMax.getText();

//cria integers para armazenar os valores em inteiros
int numeros = 0;
int jogos = 0;
int max = 0;

//verifica se todos os JFormattedTextField foram preenchidos, se não exibe uma mensagem
if (!qntNumeros.trim().equals("") &&
!qntJogos.trim().equals("") &&
!numMax.trim().equals("")) {

numeros = Integer.parseInt(qntNumeros);
jogos = Integer.parseInt(qntJogos);
max = Integer.parseInt(numMax);

//if que verifica se o valor max é suficiente em relação aos digitos
if (max / 2 >= numeros) {

for(int i = 0; i < jogo.length; ++i)
jogo[i] = 0;

//for número de jogos
for(int z = 0; z < jogos; ++z) {

//for que sorteia os números
for(int i = 0; i < numeros; ++i) {

int jogoTmp = 1 + numeroAleatorio.nextInt(max);
jogo[i] = jogoTmp;

} //fim do for que sorteia os números

//for que passa os valores do array para acumular em uma string
for(int i = 0; i < numeros; ++i) {

jogoFinal += String.valueOf(jogo[i]) + " ";

} //fim do for que passa os valores do array para acumular em uma string

//adiciona o jogo no array que guarda os jogos
listaJogos[z] = "Jogo " + String.valueOf(1+z) + ": " + jogoFinal;

//coloca a variável jogoFinal novamente como “”
jogoFinal = “”;

} //fim do for número de jogos

}
else
JOptionPane.showMessageDialog(null, “O valor máximo tem que ser no mínimo duas vezes maior que a quantidade de números!!”,
“Corriga o valor máximo”, JOptionPane.INFORMATION_MESSAGE);
//fim do if que verifica se o valor max é suficiente em relação aos digitos

}
else
JOptionPane.showMessageDialog(null, “É fundamentão que seja digitado valores em todos os campos!!”,
“Faltou campo a ser digitado”, JOptionPane.INFORMATION_MESSAGE);
//fim do if que verifica se todos os campos foram preenchidos

} //fim do método sorteador [/code]

look this :arrow: http://www.guj.com.br/posts/list/50115.java