我有一个包含5个数字的数组,并希望随机选择“任意3”数字
从我的数组生成下面的结果。我看了,找不到代码
这将重现确切的结果。我正在考虑一个厕所
功能将是最好的选择,但我如何去做,任何帮助,(JavaScript,
Java,php)将不胜感激
var myArray = ["1","2","3","4","5"];
var result = myArray.slice();
for (i=0; i < result; i++) {
console.log(myArray[i]);
}
Results:
1 2 3
1 2 4
1 2 5
1 3 4
1 3 5
1 4 5
2 3 4
2 3 5
2 4 5
3 4 5
答案 0 :(得分:0)
我认为你需要这样的东西:http://phpfiddle.org/main/code/bpg-8ix
你可以把它放在一个函数中,然后在for
循环中调用它多次。
答案 1 :(得分:0)
答案 2 :(得分:0)
尝试我的PHP示例:
<?php
$a=array("1","2","3","4","5");
for($i=1;$i<10;$i++){
$random_keys=array_rand($a,3);
echo $a[$random_keys[0]].$a[$random_keys[1]].$a[$random_keys[2]];
echo "<br>";
}
?>
答案 3 :(得分:0)
你可以试试这个:
var myArray = ["1","2","3","4","5"];
for (i=0; i < 3; i++) {
console.log(myArray[Math.floor(Math.random() * (myArray.length - 1))]);
}
答案 4 :(得分:0)
以下是我要采取的措施:
在PHP中,您可以采用以下方法:
$numbers = array(1,2,3,4,5);
// The for loop is just to show this algorithm run 10 times,
// to demonstrate the "randomness" of the result.
for ($i = 0; $i < 10; $i++) {
$random_three = array();
while(sizeof($random_three) < 3) {
$random_pick = $numbers[array_rand($numbers)];
while (in_array($random_pick, $random_three)) {
$random_pick = $numbers[array_rand($numbers)];
}
array_push($random_three, $random_pick);
}
print implode($random_three, " ");
print "\n";
}
输出(您的结果 会有所不同):
2 5 1
2 5 4
3 1 5
1 4 2
3 2 5
5 2 4
4 2 3
2 5 4
1 4 5
1 3 5