隨機函數rand公式是什么?
隨機函數rand公式是:"=a+rand()%(b-a+1)”。
rand()函數可以用來產生隨機數,但是這不是真真意義上的隨機數,是一個偽隨機數,是根據一個數(我們可以稱它為種子)為基準以某個遞推公式推算出來的一系數,當這系列數很大的時候,就符合正態公布,從而相當于產生了隨機數。
但這不是真正的隨機數,當計算機正常開機后,這個種子的值是定了的,除非你破壞了系統,為了改變這個種子的值,C提供了 srand()函數,它的原形是void srand( int a) 功能是初始化隨機產生器既rand()函數的初始值,即使把種子的值改成a。
rand()函數使用延伸:
若要生成 a 與 b 之間的隨機實數,應使用: RAND()*(b-a)+a
如果要使用函數 RAND 生成一隨機數,并且使之不隨單元格計算而改變,可以在編輯欄中輸入“=RAND()”,保持編輯狀態,然后按 F9,將公式永久性地改為隨機數。
Excel如何使用隨機函數
隨機函數指隨機生成沒有規律的數值,有隨機小數和隨機整數。在excel當中該如何使用呢?下面隨我一起看看吧。
Excel 使用隨機函數的步驟
1、RANE函數可以生成0-1之間的隨機小數,小數位最多15位。
2、RANDBETWEEN函數用于生成隨機整數,允許產生負整數。
3、RAND函數應用;
1、因RAND函數沒按一次DELETE或F9就會重新計算一次,所以要想保存數值就需要復制在選擇性粘貼數值。
2、產生隨機小數在單元格內輸入=RADN()將會產生隨機小數。
4、RAND函數生成隨機數并限制其小數位數:
我門需要用到ROUND函數,應為RAND函數產生0-1之間的函數我門可以將它乘以或加上其他數值。例如:
1、=RAND()*100
2、=ROUND(RAND()*100,1)
還可以搭配其他函數如CEILING函數,CEILING函數表述按照0.4倍進位例如;
=CEILING(ROUND(RAND()*100,3),0.4)
5、RANDBETWEEN函數,它有兩個必須條件分別為上限和下限。
表達式為=RANDBETWEEN(bottom,top)
6、例如;
=INDEX({"張","王","李","趙"},RANDBETWEEN(1,4))
表示在表格中隨機生成張、王、李、趙。
INDEX 函數返回表格或區域中的值或值的引用
7、進一步應用隨機函數生成時間函數示例:
就要用到TEXT函數。
TEXT函數簡介;如果您想要合并文本和數字,如日期,可讀格式到使用TEXT函數。
=TEXT("0:19"+RAND()*"0:03","H:MM")
表述0:19加0-2分鐘以H:MM格式顯示。
Excel隨機函數的相關 文章 :
1. excel2007怎么使用RANDBETWEEN隨機數函數
2. excel2003隨機函數的使用教程
3. excel 隨機數字公式的使用教程
計算機語言中,隨機函數原理是什么?
計算機不會產生絕對隨機的隨機數,計算機只能產生“偽隨機數”。其實絕對隨機的隨機數只是一種理想的隨機數,即使計算機怎樣發展,它也不會產生一串絕對隨機的隨機數。計算機只能生成相對的隨機數,即偽隨機數。
偽隨機數并不是假隨機數,這里的“偽”是有規律的意思,就是計算機產生的偽隨機數既是隨機的又是有規律的。怎樣理解呢?產生的偽隨機數有時遵守一定的規律,有時不遵守任何規律;偽隨機數有一部分遵守一定的規律;另一部分不遵守任何規律。比如“世上沒有兩片形狀完全相同的樹葉”,這正是點到了事物的特性,即隨機性,但是每種樹的葉子都有近似的形狀,這正是事物的共性,即規律性。從這個角度講,你大概就會接受這樣的事實了:計算機只能產生偽隨機數而不能產生絕對隨機的隨機數。
隨機函數有如下兩種:
rand()函數返回0到RAND_MAX之間的偽隨機數(pudorandom)。RAND_MAX常量被定義在stdlib.h頭文件中。其值等于32767,或者更大。
srand()函數使用自變量n作為種子,用來初始化隨機數產生器。只要把相同的種子傳入srand(),然后調用rand()時,就會產生相同的隨機數序列。因此,我們可以把時間作為srand()函數的種子,就可以避免重復的發生。如果,調用rand()之前沒有先調用srand(),就和事先調用srand(1)所產生的結果一樣。
什麼是隨機函數?怎么定義?怎么用?
隨機函數就是產生數的函數,c語言里有rand(),srand()等函數
用法如下:
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
void main( void )
{
int i,k;
srand( (unsigned)time( NULL ) ); //用系統時間當種子,對隨機函數進行初始化
for( i = 0; i < 10;i++ )
{
k=rand()%100; //產生各個隨機數
printf( " k=%d\n", k );
}
}
c語言隨機函數怎么用,怎么定義?
隨機函數就是產生數的函數,c語言里有rand(),srand()等函數。
用法
#include
#include
#include
void main( void )
{
int i,k;
srand( (unsigned)time( NULL ) ); //用系統時間當種子,對隨機函數進行初始化
for( i = 0; i < 10;i++ )
{
k=rand()%100; //產生各個隨機數
printf( " k=%d/n", k );
}
}
詳述
rand() srand() 頭文件為#include
標準C庫中函數rand()可以生成0~RAND_MAX之間的一個隨機數,其中RAND_MAX 是stdlib.h 中定義的一個整數,它與系統有關。
rand()函數沒有輸入參數,直接通過表達式rand()來引用,rand()%n是產生的隨機數對n取余,起到了取0到n-1之間隨機數的作用;
例如可以用下面的語句來打印兩個隨機數: printf("Random numbers are: %i %i/n",rand(),rand());
因為rand()函數是按指定的順序來產生整數,而未指定運行的種子,所以rand()每次使用的都是同一個種子來產生隨機數序列,因此每次執行上面的語句都打印相同的兩個值,所以說C語言的隨機并不是正真意義上的隨機。
為了時程序在每次執行時都能生成一個新序列的隨機值,我們通常通過為隨機數生成器提供一粒新的隨機種子。函數 srand()(來自stdlib.h)可以為隨機數生成器播散種子。只要種子不同rand()函數就會產生不同的隨機數序列。srand()稱為隨機數生成器的初始化器。
srand( (unsigned)time( NULL ) ); 用系統時間當種子,對隨機函數進行初始化,每次的系統時間不同,所以種子也就不同,產生的隨機數序列也就不同。