PHP程序实现利用rand(1,100)函数产生10个1~100之间的随机数

使用PHP程序语言实现如图的内容,例:

实验随机数函数
一、随机产生的十个数是:
18 65 89 98 46 4 79 46 97 76

二、其中的最大数和最小数是:
最大数:98
最小数:4

三、其余的八个数是:
18 65 89 46 79 46 97 76
谢谢,其实我主要是想知道如何实现输出剩余的那八个数。。

复制下面代码
<?

//echo rand(1,100);
$max=0;
$min=100;
for($i=0;$i<=9;$i++){
$rand[$i]=rand(1,100);

if($rand[$i]>$max){
$max=$rand[$i];
}
if($rand[$i]<$min){

$min=$rand[$i];
}
$str.=$rand[$i].",";
}
//去除最后一个逗号
$str.="quchu";
$str=str_replace(",quchu","",$str);
echo "最大数是:".$max;
echo "<hr>";
echo "最小数是:".$min;
echo "<hr>";
//echo "原型是:".$str;
echo "<hr>";
echo "中间数是:".str_replace($min.",","",str_replace($max.",","",$str));
?>
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-10-19
<?php
$myarr=array();
while(count($myarr)<10){
$myarr[]=mt_rand(1,100);
$myarr=array_unique($myarr);
}
print join(',',$myarr);
?>

上面的mt_rand可以替换为rand,但是前者效率高,区别可以参考后面的参考资料。

另外也可以用下面的方法实现

<?php
function myArr($begin=1,$end=100,$limit=10){
$rand_array=range($begin,$end);
shuffle($rand_array);
return array_slice($rand_array,0,$limit);
}
print_r(myArr());
?>

这种方法思路,是将1-100随机排列,然后截取前10个数。

参考资料:http://www.7n7z.com/edu/code/php/2015/10/79.html

第2个回答  2010-05-16
<?php
//不重复的随机数
$array = array();
$temp_array = array();
for($i = 0 ; $i < 10 ; $i++) {
$temp_array[$i] = rand(1,100);
if(!in_array($array[$i],$temp_array)) {
$array[$i] = $temp_array[$i];
}
}
print_r($array);
echo '最大数是'.max($array).',最少数是'.min($array);
?>
第3个回答  2010-05-17
<?php
$num[]=rand(1,100);
$num[]=rand(1,100);
$num[]=rand(1,100);
$num[]=rand(1,100);
$num[]=rand(1,100);
$num[]=rand(1,100);
$num[]=rand(1,100);
$num[]=rand(1,100);
$num[]=rand(1,100);
$num[]=rand(1,100);
sort($num);
print_r($num);
for($i=0;$i<8;$i++){
echo $num[$i]."<br>";
}
?>
第4个回答  2010-05-16
用数组可以实现,PHP的数组函数相当强大

用VFP编程随机产生10个1~100之间的正整数,并求他们的和
clear s=0 ??'十个随机1-100的正整数为:'for i=1 to 10 n=int(rand()*(100-1+1)+1)??n s=s+n endfor ?'它们的和为:',s

php生成随机数字,范围1-100,每次生成一个数字,可以重复
int rand ( int $min , int $max )使用循环生成,假如想生成512个数字,就可以像这样:num = 1;\/\/初始化一个变量为1 for($i = 1; $i <= 512; $i++)\/\/这个是看你要生成多少个数字,然后循环生成 { if($num >= 100)num = 1;\/\/若变量的数字大于一百,则返回变成1 echo $num."...

怎么用C++编写一个rand()函数,功能上是产生10个0-100之间的随机整数
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。2、在test.cpp文件中,输入C语言代码:for (int i = 0; i < 10; i++)printf("%d ", rand() % 100 +1);3、编译器运行test.cpp文件,此时成功通过rand产生了10个1-100内的整数。

怎样用C语言生成10个1到100的不重复的随机数?
include include<stdlib.h> int main(){ int a[10];srand((unsigned)time(NULL));for(int i=0;i<10;i++){ A: a[i]=rand()%99+1;for(int j=0;j<i;j++){ a[i]=rand()%99+1;if(a[i]==a[j])goto A;else break;} } for(int i=0;i<10;i++)printf("%d ",a[...

利用rand的函数产生10个随机数,从小到大排序 matlab程序 急求大神!!
1、首先打开电脑上的“matlab”软件。2、rand函数产生由在(0, 1)之间均匀分布的随机数组成的数组,下面在命令行输入rand(1)。3、rand(a,b)产生a行b列的随机矩阵,在命令行输入rand(1,4)产生一个1行4列的随机矩阵。4、下面输入rand(2,3),产生一个2行3列的随机矩阵。5、当行数和列数相等...

将随机产生范围从1到100的10个整数放在数组a(1 to 10)中,用选择法将数...
public class Array_Number { public static void main(String[] args) { double[] doubleArr = new double[10];List<Double> list = new ArrayList<Double>();stroeRandomNumber(doubleArr);storeInList(list, doubleArr);System.out.println(list);System.out.println("===");getListElement(li...

自动生成10个整数(1~100),求出生成数组中的最大值和最小值,以及显示排...
int main(int argc,char *argv[]){ int a[10],i,j,k;srand((unsigned)time(NULL));for(i=0;i<10;a[i++]=rand()%100+1);\/\/生成10个随机数保存于数组 for(i=0;i<10;i++)\/\/冒泡升序排序并求最大最小值 for(j=0;j<9;j++)if(a[j]>a[j+1])k=a[j],a[j]=a[j+...

excel中从1-100中随机生成10个不重复的整数,重复十次后这一百个数据就...
1、选择B1:B100单元格,输入=RAND() 按Ctrl+Enter组合键,生成随机数;2、输入以下公式,然后向右向下填充至10列10行,即可生成10行10列不重复的随机整数 =RANK(OFFSET($B$1,(ROW(A1)-1)*10+COLUMN(A1)-1,),$B:$B)详见附图示例 ...

php程序如何产生随机数?
它可以产生随机数值的平均速度比 libc 提供的 rand() 快四倍。所以建议楼主用这个函数 比rand要快 int mt_rand ([ int $min ], int $max ) $min为做小值 $max为最大值 <?php echo "";for ($i=0;$i<2;$i++) \/\/ 外层循环控制行数 { echo "";for ($j=0;$j<10;$j++)...

VB产生10个[1,100]的随机数
Sub Form_Load()Dim fo As Long Randomize Timer For fo = 1 To 10 Label1 = Label1 & Rand(1, 100) & vbCrLf Next Label1.Height = TextHeight("") * 10 End Sub Function Rand(Left As Long, Right As Long) As Long Rand = Left + (Right - Left) * Rnd End Function ...

相似回答