下边的是:奇偶比例缩水法的javascript程式 (范例)
注释:lonum 为访客选取红球组成的数组
oddv 奇偶比例 分别是:0:6 1:5 2:4 3:3 4:2 5:1 6:0
function countODD(lonum){
var ODDcount=0;
for (var i=0; i<lonum.length; i++) {
if ((lonum[i]%2)==1) {
ODDcount++;
}
}
return ODDcount;
}
function resultODD(lonum,oddv){
var resultnum=new Array();
var tmpindex=0;
var ODDvalue=0;
for (var i=0;i<lonum.length;i++) {
ODDvalue=countODD(lonum[i]);
for (var j=0;j<oddv.length;j++) {
if (ODDvalue==oddv[j]) {
resultnum[tmpindex]=lonum[i];
tmpindex++;
j=oddv.length;
}
}
}
return resultnum;
}
<SCRIPT LANGUAGE="JavaScript">
<!--
//数组对象的indexOf方法
if (!Array.prototype.indexOf){
Array.prototype.indexOf = function(obj, fromIndex){
if (fromIndex == null){
fromIndex = 0;
}else if (fromIndex < 0){
fromIndex = Math.max(0, this.length + fromIndex);
}
for (var i = fromIndex; i < this.length; i++){
if (this[i] == obj){
return i;
}
}
return-1;
};
}
//产生随机数
function randomNumber(limit){
return Math.floor(Math.random() * limit);
}
//产生指定个数的大小数字,返回数组
function getArray(min, max) {
var aryBase = new Array();
var aryReturn = new Array();
for (var i = 1; i <= 33; i++){
aryBase[aryBase.length] = i;
}
for ( var m = 0; m < min; m++){
var rdmNumber = randomNumber(16);
if (aryReturn.indexOf(rdmNumber) == -1){
aryReturn[aryReturn.length] = rdmNumber;
} else {
m--;
}
}
for ( var n = 0; n < max; n++){
var rdmNumber = 17 + randomNumber(16);
if (aryReturn.indexOf(rdmNumber) == -1){
aryReturn[aryReturn.length] = rdmNumber;
} else {
n--;
}
}
return aryReturn
}
<SCRIPT LANGUAGE="JavaScript">
<!--
function getArray(min, max) {
var aryBase = new Array();
var aryReturn = new Array();
for (var i = 1; i <= 33; i++){
aryBase[aryBase.length] = i;
}
for ( var m = 0; m < min; m++){
aryReturn[aryReturn.length] = randomNumber(16)
}
for ( var n = 0; n < max; n++){
aryReturn[aryReturn.length] = 16 + randomNumber(16)
}
return aryReturn
}
function randomNumber(limit){
return Math.floor(Math.random() * limit);
}