Presentation is loading. Please wait.

Presentation is loading. Please wait.

隨機函數.

Similar presentations


Presentation on theme: "隨機函數."— Presentation transcript:

1 隨機函數

2 6-4.2 亂數函式 int rand( void ); 所謂亂數(Random number),是由電腦自動產生一 個數字
6-4.2 亂數函式 所謂亂數(Random number),是由電腦自動產生一 個數字 電腦的亂數其實是由一個亂數產生器產生的,函式名 稱是rand,使用前記得將其表頭檔<stdlib.h>包含進來 格式: int rand( void ); 呼叫後會傳回0~32767之間的任意一數 2

3 6-4.2 亂數函式 01 //Program name:06-04-02A.c 02 #include <stdio.h>
6-4.2 亂數函式 例如: 01 //Program name: A.c 02 #include <stdio.h> 03 #include <stdlib.h> 04 int main() 05 { int i; for (i=0;i<5;i++) printf("%d\n",rand()); system("PAUSE"); return 0; 11 } 執行結果: 41 18467 6334 26500 19169 3

4 void srand(unsigned int seed);
6-4.2 亂數函式 每次執行程式,產生亂碼的順序卻都相同,這是因為亂數 產生器的「種子」(seed)並沒有改變,所產生的亂數都 是屬於同一組 改變種子,就會產生另一組亂數 語法: void srand(unsigned int seed); 4

5 6-4.2 亂數函式 01 //Program name:06-04-02B.c 02 #include <stdio.h>
6-4.2 亂數函式 例如: 01 //Program name: B.c 02 #include <stdio.h> 03 #include <stdlib.h> 04 int main() 05 { int i; srand(100); for (i=0;i<5;i++) printf("%d\n",rand()); system("PAUSE"); return 0; 12 } 執行結果: 365 1216 5415 16704 24504 5

6 6-4.2 亂數函式 srand((unsigned)time(NULL));
6-4.2 亂數函式 改了亂數產生器的種子數,以後每次執行時,還 是產生同樣的一組亂數 利用讀取系統時間的函式,產生一個種子數,讓 亂數產生器每次執行都不一樣 時間函數表頭檔:time.h 使用方法如下: srand((unsigned)time(NULL)); 6

7 6-4.2 亂數函式 例如: 01 //Program name:06-04-02C.c
6-4.2 亂數函式 例如: 01 //Program name: C.c 02 #include <stdio.h> 03 #include <stdlib.h> 04 #include <time.h> 05 int main() 06 { int i; srand((unsigned)time(NULL)); for (i=0;i<5;i++) printf("%d\n",rand()); system("PAUSE"); return 0; 13 } 執行結果: 29921 18871 385 32432 808 7


Download ppt "隨機函數."

Similar presentations


Ads by Google