有4个球,红色2个,1个黄的,1个绿的。
随机取1个球,抽到红球的概率是多少,抽到黄球的概率是多少。O(∩_∩)O哈哈~

解决方案 »

  1.   

    给个玩具程序自己模拟去....别输入太大的数,一千万计算要1秒左右,一亿就要10秒,十亿就要....慢慢等 囧import javax.swing.JOptionPane;/**
     * 
     * @author __USER__
     */
    public class Balls extends javax.swing.JFrame { /** Creates new form test */
    public Balls() {
    initComponents();
    } //GEN-BEGIN:initComponents
    // <editor-fold defaultstate="collapsed" desc="Generated Code">
    private void initComponents() { jButton1 = new javax.swing.JButton();
    jLabel1 = new javax.swing.JLabel();
    jTextField1 = new javax.swing.JTextField();
    jTextField2 = new javax.swing.JTextField();
    jLabel2 = new javax.swing.JLabel();
    jTextField3 = new javax.swing.JTextField();
    jLabel3 = new javax.swing.JLabel();
    jLabel4 = new javax.swing.JLabel();
    jTextField4 = new javax.swing.JTextField(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jButton1.setText("\u5f00\u59cb\u6d4b\u8bd5");
    jButton1.addActionListener(new java.awt.event.ActionListener() {
    public void actionPerformed(java.awt.event.ActionEvent evt) {
    jButton1ActionPerformed(evt);
    }
    }); jLabel1.setText("\u8bf7\u8f93\u5165\u6d4b\u8bd5\u6b21\u6570\uff1a"); jTextField2.setEditable(false); jLabel2.setText("红球概率:"); jTextField3.setEditable(false); jLabel3.setText("黄球概率:"); jLabel4.setText("\u603b\u8017\u65f6\uff08\u79d2\uff09\uff1a"); jTextField4.setEditable(false); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(
    getContentPane());
    getContentPane().setLayout(layout);
    layout
    .setHorizontalGroup(layout
    .createParallelGroup(
    javax.swing.GroupLayout.Alignment.LEADING)
    .addGroup(
    layout
    .createSequentialGroup()
    .addGap(84, 84, 84)
    .addGroup(
    layout
    .createParallelGroup(
    javax.swing.GroupLayout.Alignment.LEADING)
    .addGroup(
    layout
    .createSequentialGroup()
    .addGroup(
    layout
    .createParallelGroup(
    javax.swing.GroupLayout.Alignment.LEADING)
    .addGroup(
    layout
    .createSequentialGroup()
    .addComponent(
    jLabel3)
    .addGap(
    26,
    26,
    26)
    .addComponent(
    jTextField3,
    javax.swing.GroupLayout.DEFAULT_SIZE,
    153,
    Short.MAX_VALUE))
    .addGroup(
    layout
    .createSequentialGroup()
    .addComponent(
    jLabel2)
    .addGap(
    26,
    26,
    26)
    .addGroup(
    layout
    .createParallelGroup(
    javax.swing.GroupLayout.Alignment.LEADING)
    .addComponent(
    jTextField4,
    javax.swing.GroupLayout.PREFERRED_SIZE,
    97,
    javax.swing.GroupLayout.PREFERRED_SIZE)
    .addComponent(
    jTextField2,
    javax.swing.GroupLayout.DEFAULT_SIZE,
    153,
    Short.MAX_VALUE))))
    .addGap(
    119,
    119,
    119))
    .addGroup(
    layout
    .createSequentialGroup()
    .addGroup(
    layout
    .createParallelGroup(
    javax.swing.GroupLayout.Alignment.TRAILING)
    .addComponent(
    jLabel4)
    .addComponent(
    jLabel1))
    .addPreferredGap(
    javax.swing.LayoutStyle.ComponentPlacement.RELATED)
    .addComponent(
    jTextField1,
    javax.swing.GroupLayout.PREFERRED_SIZE,
    117,
    javax.swing.GroupLayout.PREFERRED_SIZE)
    .addGap(
    18,
    18,
    18)
    .addComponent(
    jButton1)
    .addContainerGap()))));
    layout
    .setVerticalGroup(layout
    .createParallelGroup(
    javax.swing.GroupLayout.Alignment.LEADING)
    .addGroup(
    javax.swing.GroupLayout.Alignment.TRAILING,
    layout
    .createSequentialGroup()
    .addGap(52, 52, 52)
    .addGroup(
    layout
    .createParallelGroup(
    javax.swing.GroupLayout.Alignment.BASELINE)
    .addComponent(jLabel4)
    .addComponent(
    jTextField4,
    javax.swing.GroupLayout.PREFERRED_SIZE,
    javax.swing.GroupLayout.DEFAULT_SIZE,
    javax.swing.GroupLayout.PREFERRED_SIZE))
    .addGap(28, 28, 28)
    .addGroup(
    layout
    .createParallelGroup(
    javax.swing.GroupLayout.Alignment.BASELINE)
    .addComponent(
    jLabel2,
    javax.swing.GroupLayout.PREFERRED_SIZE,
    20,
    javax.swing.GroupLayout.PREFERRED_SIZE)
    .addComponent(
    jTextField2,
    javax.swing.GroupLayout.PREFERRED_SIZE,
    javax.swing.GroupLayout.DEFAULT_SIZE,
    javax.swing.GroupLayout.PREFERRED_SIZE))
    .addGap(32, 32, 32)
    .addGroup(
    layout
    .createParallelGroup(
    javax.swing.GroupLayout.Alignment.BASELINE)
    .addComponent(
    jLabel3,
    javax.swing.GroupLayout.PREFERRED_SIZE,
    20,
    javax.swing.GroupLayout.PREFERRED_SIZE)
    .addComponent(
    jTextField3,
    javax.swing.GroupLayout.PREFERRED_SIZE,
    javax.swing.GroupLayout.DEFAULT_SIZE,
    javax.swing.GroupLayout.PREFERRED_SIZE))
    .addPreferredGap(
    javax.swing.LayoutStyle.ComponentPlacement.RELATED,
    67, Short.MAX_VALUE)
    .addGroup(
    layout
    .createParallelGroup(
    javax.swing.GroupLayout.Alignment.BASELINE)
    .addComponent(
    jLabel1,
    javax.swing.GroupLayout.PREFERRED_SIZE,
    20,
    javax.swing.GroupLayout.PREFERRED_SIZE)
    .addComponent(
    jTextField1,
    javax.swing.GroupLayout.PREFERRED_SIZE,
    javax.swing.GroupLayout.DEFAULT_SIZE,
    javax.swing.GroupLayout.PREFERRED_SIZE)
    .addComponent(jButton1))
    .addGap(76, 76, 76))); pack();
    }// </editor-fold>
    //GEN-END:initComponents private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
    long time = System.currentTimeMillis();
    String number = jTextField1.getText();
    if (number.matches("^[1-9]{1}\\d*$")) {
    //红球概率
    long count1 = 0;
    //黄球概率
    long count2 = 0;
    //定义四个球,黄代表0;绿代表1,红代表2
    int[] balls = { 0, 1, 2,2 };
    long times = Long.parseLong(number);
    for (long i = 0L; i < times; i++) {
    int random = (int) (Math.random() * 4);
    int  ball= balls[random];
    if(ball==2){
    count1 ++;
    }else if(ball==0){
    count2 ++;
    }
    }
    jTextField2.setText("" + count1);
    jTextField3.setText("" + count2);
    time = System.currentTimeMillis() - time;
    jTextField4.setText("" + time/1000.0);
    } else {
    JOptionPane.showMessageDialog(null, "输入有误!");
    }
    } /**
     * @param args
     *            the command line arguments
     */
    public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {
    public void run() {
    new Balls().setVisible(true);
    }
    });
    } //GEN-BEGIN:variables
    // Variables declaration - do not modify
    private javax.swing.JButton jButton1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JTextField jTextField1;
    private javax.swing.JTextField jTextField2;
    private javax.swing.JTextField jTextField3;
    private javax.swing.JTextField jTextField4;
    // End of variables declaration//GEN-END:variables}
      

  2.   

    那是 swing的拖拉界面搞出来的排版,很古怪....核心就一点点:
    int times=....//抽取的次数
    long count1 = 0;
    //黄球概率
    long count2 = 0;
    //定义四个球,黄代表0;绿代表1,红代表2
    int[] balls = { 0, 1, 2,2 };
    for (long i = 0L; i < times; i++) {
    int random = (int) (Math.random() * 4);
    int  ball= balls[random];
    if(ball==2){
    count1 ++;                    
    }else if(ball==0){
    count2 ++;                    
    }
    }