满足b1、b2等于0,则输出3组这样的从b1、b2、b3、b4、b5的随机值
不满足b1、b2等于0的,不输出
谢谢

解决方案 »

  1.   

    var b1,b2,b3,b4,b5;
    for(var i=1;i < 4;){
        b1=Math.round(Math.random());
      b2=Math.round(Math.random());
      b3=Math.round(Math.random());
      b4=Math.round(Math.random());
      b5=Math.round(Math.random());
    if (b1 == 0 && b2 == 0) {
        console.log();//输出b1-b5的值
        i ++;
    }
    }
      

  2.   


    var _al,
    _count = 0;
    for(;;){
    _al = [
    Math.round( Math.random() ),
    Math.round( Math.random() ),
    Math.round( Math.random() ),
    Math.round( Math.random() ),
    Math.round( Math.random() )
    ];
    if( _al[ 0 ] == 0 && _al[ 1 ] == 0 ){
    console.log( _al.join("") );
    if( ++_count >= 3 ){ break; };
    };
    };
      

  3.   


    高手,看起来思路是非常正确的,只是小弟在ie10下测试,没有输出。还请兄帮我查一下是浏览器原因还是什么原因,谢谢。
    用document.write替换console.log,显示出来了,怎样用逗号把每个值隔开,用分号把每组值隔开呢?
    为萧萧可乐兄追加20分。
      

  4.   


    var arr = [];
    while(arr.length<3)
    {
    var n = ((~~(Math.random()*32))|32).toString(2).replace(/./g,",$&").slice(3);
    if(n.indexOf("0,0")==0)
    arr.push(n);
    }
    alert(arr.join(";"));
      

  5.   


    我可以理解为输出两个0外加3个随机01么?
    大家讨论一下。从概率角度分析,反正0和1出现的概率都是0.5,用循环去跑,直到b1和b2相等,和b3 b4 b5没有任何关系,他们的是相互独立的事件。因此:
    for(var i=0; i<3; i++) {
      document.write('第'+(i+1)+'组:');
      document.write('0');
      document.write('0');
      document.write(Math.round(Math.random()));
      document.write(Math.round(Math.random()));
      document.write(Math.round(Math.random()));
    }
    这样一来,感觉好无聊了啊。
      

  6.   


    我可以理解为输出两个0外加3个随机01么?
    大家讨论一下。从概率角度分析,反正0和1出现的概率都是0.5,用循环去跑,直到b1和b2相等,和b3 b4 b5没有任何关系,他们的是相互独立的事件。因此:
    for(var i=0; i<3; i++) {
      document.write('第'+(i+1)+'组:');
      document.write('0');
      document.write('0');
      document.write(Math.round(Math.random()));
      document.write(Math.round(Math.random()));
      document.write(Math.round(Math.random()));
    }
    这样一来,感觉好无聊了啊。这5个数同时随机给出,当前两个为0时,则输出这5个数,这是一整批。
    一起进步。
      

  7.   


    谢谢,前两个0也要随机得到的,后面是0是1也是随机。这5个数是一个批次得到,但前两个是0。这也是问题的意义所在对呀,也就是说,前两个是固定的,就是0,所以我可以直接输出。再然后,后三个数的随机性和前两个是独立的,也就是说,后三个数的随机性不受前两个是否为0而影响。因此,随机一组b1~b5直到b1=b2=0,此时的b3~b5的情况,与固定b1 b2为0,只随机一次b3~b5的情况,从概率上说,完全没有差异的。再次强调,随机这5个数是相互独立的事件,不管是不是一个批次得到的,都没有关系的,因为他们不会相互影响。因此,没有必要随机5个数直到b1=b2=0。
      

  8.   


    高手,看起来思路是非常正确的,只是小弟在ie10下测试,没有输出。还请兄帮我查一下是浏览器原因还是什么原因,谢谢。
    用document.write替换console.log,显示出来了,怎样用逗号把每个值隔开,用分号把每组值隔开呢?
    为萧萧可乐兄追加20分。
    已解决,谢谢。