亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? tuftests.c

?? 這是三種檢驗(yàn)隨機(jī)數(shù)的源代碼 用于隨機(jī)數(shù)的檢驗(yàn)
?? C
字號(hào):
/* This file contains a sample main() for calling the   three tough tests gcd,bday and gorilla, procs for which   are included.   To run the tests on a RNG of your choice,   you must include a proc for that generator, and tell   the three test routines how to access it by means of   a #define.   A sample RNG is included (one of the versions   of the KISS generator). Just replace that proc with your own   and change the #define IUNI accordingly.*/#include <stdio.h>#include <math.h>#include <stdlib.h>/*  USER: IN THE FOLLOWING LINE, CHANGE Kiss() TO THE NAME OF THE (32-BIT) TEST RNG. */ #define IUNI Kiss()static double U[98];/* The table used by the (97, 33) lagged-Fibonacci RNG   This table is modified by rstart() and uni()          rstart() must be called prior to the calls of uni().  It sets up the table needed by the lagged-Fibonacci RNG.  The seeds, i, j, k, l must be in [1, 168].*/void rstart(int i,int j,int k,int l){    int ii, m, n;    double s, t;    for (ii=1; ii<=97; ++ii)    {   /*Fill entries of the table U[] */        s = 0.0;        t = 0.5;        for (n=1; n<=52; ++n)        {    /*Generate seeds bit by bit */            m = (((i*j)%179)*k)%179;   /*First mini RNG */            i = j;            j = k;            k = m;            l = (53*l+1)%169; /*Second mini RNG */            if (((l*m)%64)>=32)                s = s+t;  /* Generate a bit */            t = 0.5*t;        }        U[ii] = s;    }}  /* end rstart() */unsigned long Kiss(void){ // sample RNG to demonstrate use of 3tests    unsigned long long t, a=333333314LL;    static unsigned long x=123456789, jsr=362436069, y=871119182, c=129281;    y = 69069*y+12345;    jsr ^= (jsr<<13);    jsr ^= (jsr>>17);    jsr ^= (jsr<<5);    t = a*x+c;    c = (t>>32);    x = t+c;    if (x<c)    {        x++;        c++;    }    x = ~x+1;    return x+y+jsr;}double chisq( double d,double z){    double v,t;    if (z<=0.) return(0.);    t = (exp(log(z/d)/3.)-1.+2/(9*d))/sqrt((float)(2/(9*d)));    if (t>5.) return (1.);    if (t+5.<0.) return(0.);    v = (t>0.) ? 1./(1.+.33267*t) : 1./(1.-.33267*t);    v = exp(-.5*t*t)*(.1740120799+(.3739278012*v-.04793993633)*v)*v;    if(t>0) v = 1.-v;    return(v);}void gcd(unsigned long n){ //  gcd Test, n pairs of IUNI's    double s,ch32,ch99,e,r=1.0e-10;    unsigned long u, v, w, i, k, t[47], gcd[101];    unsigned long kp[36]=     { 0,0,0,5506,29532,144541,590691,2065333,6277273,16797273,39964829,      85160313,163520964,284315128,449367802,647663189,853365977,1030017639,      1140689999,1160424679,1085307890,933657875,738971259,538010076,360199303,      221583256,125137422,64787412,30697488,13285746,5238570,1876493,608568,      177920,46632,13674    };    for (i=1; i<101; i++)    {        gcd[i] = 0;        if (i<47) t[i] = 0;    }    for (i=1; i<=n; i++)    {        k = 0;        do        {u = IUNI;v = IUNI;}        while (u==0 || v==0);        do        {            w = u%v;            u = v;            v = w;            k++;        } while(v>0);        if (u>100) u = 100;        gcd[u]++;        if (k<3) k = 3;        if (k>35) k = 35;        t[k]++;    }    ch32 = 0.0;    printf("Euclid's algorithm:\n");    for(i=3; i<=35; i++)    {        e = (r*kp[i])*n;        s = (t[i]-e)*(t[i]-e)/e;        ch32 += s;    }// User: you may want to insert printf("%4d %6.3f %7.2f\n",i,s,ch32);// in the above loop to see the (O-E)^2/E values and their sums    printf(    " p-value, steps to gcd:   %f\n",chisq(16.,.5*ch32));    e = n*.61097691e-2;    ch99 = (gcd[100]-e)*(gcd[100]-e)/e;    for (i=1; i<100; i++)    {        e = n*0.6079271/(i*i);        s = (gcd[i]-e)*(gcd[i]-e)/e;        ch99 += s;    }// User: you may want to insert printf("%4d %6.3f %7.2f\n",i,s,ch99);// in the above loop to see the (O-E)^2/E values and their sums   printf(" p-value, dist. of gcd's: %f\n",chisq(49.5,.5*ch99));   printf("\n");}// requires #define IUNI rngf() // with your rngf() functionint compi(const void *i,const void *j) // compare function for qsort{    if  ( *(unsigned long int *)i <  *(unsigned long int *)j )        return -1;    if  ( *(unsigned long int *)i > *(unsigned long int *)j  )        return 1;    return 0;}void bday(void){    int i, j, k, m=4096;    unsigned long t[4096],obs[11]={0,0,0,0,0,0,0,0,0,0,0};    double w, x, ex[11], v=0.;    printf("Birthday spacings test: 4096 birthdays, 2^32 days in year\n");    for (k=1; k<=5000; k++)    {//loop for sample of size 5000        for (i=0; i<m; i++)            t[i] = IUNI;    //   get 4096 IUNI's        qsort(t,m,sizeof(long),compi); //  sort them        for (i=m-1; i>0; i--)            t[i] = t[i]-t[i-1]; // get spacings        qsort(t,m,sizeof(long),compi);  // sort spacings        j = 0;        for (i=1; i<m; i++)            j = j+(t[i]==t[i-1]) ;        if(j>10) j = 10;        obs[j]++;      // count duplicate spacings    }// end  sample of 5000 loop    printf("           Table of Expected vs. Observed counts:\n");    ex[0] = 5000.*exp(-4.); ex[10]=5000.*.008132242;    for(i=1; i<10; i++)        ex[i] = 4.*ex[i-1]/i;    printf("Duplicates   0");    for (i=1; i<10; i++)        printf("%6.0f",i+0.);    printf("   >=10\n");    printf("\Expected ");    for(i=0;i<10;i++)        printf("%6.1f",ex[i]);    printf("%6.1f\n",ex[10]);    printf("%8s","Observed");    for (i=0; i<10; i++)        printf("%6.0f",obs[i]+0.0);    printf("%6.0f\n ",obs[10]+0.0);    printf("\b%9s","(O-E)^2/E");    for (i=0; i<11; i++)    {        x = (obs[i]-ex[i])*(obs[i]-ex[i])/ex[i];        v += x;        printf("%6.1f",x);    }    x = .5*v;    w = 24.+(24.+(12.+(4.+x)*x)*x)*x;    w = 1.-exp(-x)*w/24.;    printf("\n              Birthday Spacings: Sum(O-E)^2/E=%7.3f, p=%6.3f\n",v,w);    printf("\n");} // end bdayfloat ad32(float z){  // converts AD KS statistic into p-value, n=32    float y;    if (z<.5)    {        y = exp(-1.27*log(z));        return( exp(.266-(.70025-(.009804-.000213*y)*y)*y));    }    if (z<1.)        return ( (.53383+(1.65285-(1.988-.6634*z)*z)*z)*z-.21862 );    if (z<2.)        return ( .99987-.6616*exp(-1.0896*z)-.953*exp(-2.005*z)  );    return( 1-.52686*exp(-1.05276*z)-.68053*exp(-1.62034*z) );}void gorilla(void){// begin gorilla    unsigned int *t;    float z,v,u[32];    int s[256]={0}; // table for quick count-the-1's in a long stream    unsigned long k,w,i,j,q,mask,m[32];    int n=67108864;    printf(" Gorilla test for 2^26 bits, positions 0 to 31:\n");    printf(" Note: lengthy test---for example, ~20 minutes for 850MHz PC\n");    for (i=1; i<256; i++)    {        q = i;        s[i] = 1;        while (q &= (q-1))            s[i]++;    } // set s table    m[31] = 1;    for (i=31; i>0; i--)        m[i-1] = 2*m[i]; // set masks    t = (unsigned int *) malloc(2097152*sizeof(unsigned int));    if (t == NULL)    {        printf("Not enough memory for gorilla test\n");        exit(1);    }    for (k=0; k<32; k++)    { //k loops thru bits 0,1,..31        mask = m[k];     // mask set to bit k        for (i=0; i<2097152; i++)             t[i] = 0;  // initialize t-array        // fill the initial word with 25 bits        w = 0;        for (i=0; i<25; i++)        {            w = (w>>1);            if (IUNI&mask)                w = w+(1<<25);        }        for (i=0; i<n; i++)        { //i loop, gets 2^26 w's, sets bit in t[] for each            w = (w>>1);            if (IUNI&mask)                w = w+(1<<25);            j = (w&2097151);            t[j] = (t[j] | m[w>>21]);        } //end i loop        w=0;        for (i=0; i<2097152; i++)        {            j = t[i]; // loop to count 1's in t[] array            w += s[(j)&255]+s[(j>>8)&255]+s[(j>>16)&255]+s[(j>>24)&255];        }        // end count loop        z = ((n-w)-24687971.)/4170.;    // convert counts to normal z-score        v = (z>0.) ? 1./(1.+.33267*z) : 1./(1.-.33267*z);        v = exp(-.5*z*z)*(.1740120799+(.3739278012*v-.04793993633)*v)*v;        if (z>0)           v = 1.-v;        u[k] = v;       // z-score converted to p-value        if (k%8 == 0)           printf(" Bits %2lu to %2lu--->",k,k+7);        printf( "%6.3f", v);        if (k%8 == 7) printf("\n");    } //end k loop    free(t);    // Now do KS test on 32 u's.  first, sort u's.    for (i=0; i<31; i++)    {        for (j=0; j<31-i; j++)           if (u[j+1] < u[j])           {                v = u[j];                u[j] = u[j+1];                u[j+1] = v;            }    }    // calculate Anderson-Darling statistic    z = -1024.;    for(i=0; i<32; i++)    {        v = u[i]*(1.-u[31-i]);        if (v<1.e-30)           v = 1.e-30;        z = z-(i+i+1)*log((double)v);    }    printf(" KS test for the above 32 p values: %6.3f\n",ad32(z/32.));}//end gorillaint main(void){    rstart(23,55,76,91);    bday();    gcd(10000000);    gorilla();    return 0;}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人啪免费观看软件| 99热精品国产| 午夜成人在线视频| www.欧美日韩| 亚洲色图在线播放| 99在线精品观看| 天堂在线亚洲视频| 国产欧美日韩不卡免费| 91香蕉视频mp4| 精品一区二区在线视频| 国产精品亲子伦对白| 在线免费亚洲电影| 国产精品亚洲午夜一区二区三区 | 欧美精品一区二区三区在线播放| 麻豆一区二区三区| 亚洲免费色视频| 精品国产免费久久| 欧美丝袜丝交足nylons图片| 精油按摩中文字幕久久| 亚洲成人综合网站| 国产欧美日韩激情| 日韩欧美一区二区免费| 91传媒视频在线播放| 国产制服丝袜一区| 蜜臀久久99精品久久久久久9| 国产精品高潮呻吟| 国产亚洲精品7777| 精品国产乱码久久| 日韩视频一区二区| 欧美xxxxxxxx| 欧美成人欧美edvon| 91精品国产麻豆国产自产在线| 91玉足脚交白嫩脚丫在线播放| 国产成人亚洲精品狼色在线| 六月丁香婷婷色狠狠久久| 亚洲一二三四在线观看| 亚洲小说春色综合另类电影| 亚洲国产sm捆绑调教视频| 午夜精品在线看| 亚洲精品日韩综合观看成人91| 国产精品高清亚洲| 亚洲精品免费播放| 亚洲va韩国va欧美va| 久久精品国产999大香线蕉| 久久成人精品无人区| 成人免费观看男女羞羞视频| 99热99精品| 精品久久一区二区三区| 久久久亚洲综合| 亚洲成人久久影院| 国产一区二区剧情av在线| 91在线porny国产在线看| 欧美人xxxx| 国产精品乱码久久久久久| 一区二区欧美国产| 国产精品中文字幕日韩精品| 91首页免费视频| 另类的小说在线视频另类成人小视频在线| 亚洲一二三区在线观看| 亚洲日本一区二区| 国产欧美日韩精品一区| 国产女人18毛片水真多成人如厕| 国产精品视频你懂的| 蜜臀a∨国产成人精品| 99精品欧美一区二区蜜桃免费| 国产午夜精品一区二区| 国产精品高清亚洲| 成人一级黄色片| 久久久久久99久久久精品网站| 午夜精品久久久久久久| 香港成人在线视频| 在线影视一区二区三区| 亚洲一区影音先锋| 欧美吞精做爰啪啪高潮| 亚洲成人黄色影院| 日本精品视频一区二区| 一级做a爱片久久| 欧美久久一二区| 另类小说视频一区二区| 欧美一三区三区四区免费在线看| 裸体在线国模精品偷拍| 色噜噜狠狠一区二区三区果冻| 日韩欧美一级在线播放| 亚洲一卡二卡三卡四卡无卡久久 | 成人综合在线观看| 精品国产亚洲一区二区三区在线观看| 丝袜美腿高跟呻吟高潮一区| 欧美综合天天夜夜久久| 亚洲国产视频在线| 欧美一区国产二区| 91在线视频免费91| 婷婷一区二区三区| 国产精品久久久久影视| 在线不卡一区二区| 成人午夜免费视频| 日韩精品亚洲一区| 一区在线观看免费| 欧美日韩视频在线第一区| 夜夜精品浪潮av一区二区三区| 国产91综合网| 国产在线精品不卡| 亚洲天堂精品在线观看| 色又黄又爽网站www久久| 亚洲久本草在线中文字幕| 免费成人性网站| 午夜不卡av在线| 精品成人在线观看| 懂色av一区二区三区免费观看| 久久亚洲精精品中文字幕早川悠里| 蜜臂av日日欢夜夜爽一区| 夜夜爽夜夜爽精品视频| 欧美精品一区二区三区视频| 91麻豆文化传媒在线观看| 日本欧美在线看| 国产午夜精品久久| 国产日韩精品一区二区三区| 欧美性猛交xxxx黑人交| 婷婷一区二区三区| 成人免费小视频| 欧美三级资源在线| 制服视频三区第一页精品| 99re这里都是精品| 国产一区二区在线观看视频| 久久国内精品自在自线400部| 久久国产精品一区二区| 久久精品国产免费| 精品国产精品网麻豆系列| 麻豆国产一区二区| 亚洲综合网站在线观看| 69av一区二区三区| 亚洲精品美国一| 国产成人免费xxxxxxxx| 亚洲午夜三级在线| 欧美一卡2卡三卡4卡5免费| 日韩一区欧美小说| 美女一区二区视频| 成人精品国产一区二区4080| 9色porny自拍视频一区二区| 91精品欧美一区二区三区综合在 | 天天色 色综合| 国产精品久久久一本精品| 久久精品国产亚洲a| 欧美日韩一区二区三区免费看| 亚洲成在人线在线播放| 久久国产精品区| 亚洲人成亚洲人成在线观看图片| 国产精品乱人伦中文| 在线成人午夜影院| 欧美亚洲高清一区| 欧美猛男男办公室激情| 2021久久国产精品不只是精品| 亚洲精品中文在线观看| 亚洲欧洲综合另类| 婷婷夜色潮精品综合在线| 日韩视频不卡中文| 国产欧美日韩麻豆91| 亚洲精品福利视频网站| 国产一区久久久| 欧美精品色综合| 亚洲人妖av一区二区| 五月天激情小说综合| av在线不卡免费看| 欧美一区二区三区在线电影| 久久综合九色综合久久久精品综合 | 国产成人亚洲精品狼色在线| 日本亚洲欧美天堂免费| 日本精品一级二级| 亚洲欧洲在线观看av| 韩国女主播成人在线观看| 777久久久精品| 亚洲一区二区三区激情| 成人综合日日夜夜| 国产精品你懂的| voyeur盗摄精品| 久久精品一区八戒影视| 国产一区不卡在线| 国产亚洲欧美日韩在线一区| 国产精品久久久久久久久晋中| 久草精品在线观看| 久久久一区二区三区捆绑**| 成人aaaa免费全部观看| 国产欧美一区二区三区在线看蜜臀 | 欧美一二三区在线观看| 精品亚洲成a人| 中文字幕av一区二区三区免费看 | 精品精品国产高清a毛片牛牛| 午夜久久久久久| 欧美日韩精品免费观看视频| 青青草国产精品亚洲专区无| 日韩欧美一区二区三区在线| 亚洲欧美中日韩| 欧美精品乱人伦久久久久久| 激情深爱一区二区| 亚洲欧洲日韩在线| 91精品国产一区二区三区蜜臀| 日韩有码一区二区三区| 欧美激情一区二区三区在线| 9191精品国产综合久久久久久| 美女www一区二区| 亚洲综合免费观看高清完整版在线 |