CyRhmU.jpeg
²é¿´: 1604  |  »Ø¸´: 14
µ±Ç°Ö÷ÌâÒѾ­´æµµ¡£

liuyalihd

Í­³æ (СÓÐÃûÆø)

¡ï ¡ï ¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
woshilsh(½ð±Ò+2,VIP+0): 9-6 16:18
¸øÄã¶Î´úÂë¿´¿´°É£¡

#define IADD   453806245
#define IMUL   314159269
#define MASK   2147483647
#define SCALE  0.4656612873e-9

int randSeedP = 17;

void InitRand (int randSeedI)
{
  struct timeval tv;

  if (randSeedI != 0) randSeedP = randSeedI;
  else {
    gettimeofday (&tv, 0);
    randSeedP = tv.tv_usec;
  }
}

real RandR ()
{
  randSeedP = (randSeedP * IMUL + IADD) & MASK;
  return (randSeedP * SCALE);
}

#if NDIM == 2

void VRand (VecR *p)
{
  real s;

  s = 2. * M_PI * RandR ();
  p->x = cos (s);
  p->y = sin (s);
}

#elif NDIM == 3

void VRand (VecR *p)
{
  real s, x, y;

  s = 2.;
  while (s > 1.) {
    x = 2. * RandR () - 1.;
    y = 2. * RandR () - 1.;
    s = Sqr (x) + Sqr (y);
  }
  p->z = 1. - 2. * s;
  s = 2. * sqrt (1. - s);
  p->x = s * x;
  p->y = s * y;
}

#endif
11Â¥2009-09-06 13:34:22
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

kernelflyer

ľ³æ (ÕýʽдÊÖ)

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
Ò»°ãÎÒ¶¼ÊÇ×Ô¼ºÈç϶¨ÒåÒ»¸öº¯Êý rand01

#define rand01 (0.9999999*float(rand())/RAND_MAX)
12Â¥2009-09-14 20:27:42
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

richard58272

½ð³æ (ÕýʽдÊÖ)

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
Èç¹ûÖ»ÊDzúÉúÒ»´ÎËæ»úÊý£¬ÄÇô±È½ÏÈÝÒ×£º°Ñϵͳʱ¼ä×÷ΪÖÖ×Ó£¬È»ºóµ÷ÓÃËæ»úº¯Êý¡£Èç¹ûÑ­»·²úÉú¶à´ÎËæ»úÊý£¬ÄÇô±ØÐë¶ÔÖÖ×Ó½øÐÐÊÖ¶¯¸ü¸Ä£¬·ñÔòÿ´Î²úÉúµÄËæ»úÊýÐòÁж¼ÊÇÒ»ÑùµÄ¡£
13Â¥2009-09-14 20:45:10
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

jove1782

ľ³æ (ÕýʽдÊÖ)

Сľ³æ·çÑÅЭ»á´úÀíÃØÊ鳤

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
ÒýÓûØÌû:
Originally posted by richard58272 at 2009-9-14 20:45:
Èç¹ûÖ»ÊDzúÉúÒ»´ÎËæ»úÊý£¬ÄÇô±È½ÏÈÝÒ×£º°Ñϵͳʱ¼ä×÷ΪÖÖ×Ó£¬È»ºóµ÷ÓÃËæ»úº¯Êý¡£Èç¹ûÑ­»·²úÉú¶à´ÎËæ»úÊý£¬ÄÇô±ØÐë¶ÔÖÖ×Ó½øÐÐÊÖ¶¯¸ü¸Ä£¬·ñÔòÿ´Î²úÉúµÄËæ»úÊýÐòÁж¼ÊÇÒ»ÑùµÄ¡£

Ë­ÈüÆËã»úÖ»ÄÜÌá¹©Î±Ëæ»úÊý£¬ÓÃϵͳʱ¼ä×÷ΪÖÖ×ÓÊDZȽÏÍÆ¼öµÄÒ»ÖÖ×ö·¨¡£

µ«ÊÇαµÄÖÕ¹éÊÇαµÄ£¬²»¹ýÖ»Òª´ó¸Å·ûºÏͳ¼Æ¹é·¾Í¿ÉÒÔÁË
¤â¤Ã¤È¤âÓÀ¤¯¾A¤¯?ۤϡ¢ˆó¤ï¤ì¤Ì?ۤǤ¢¤ë¡£
14Â¥2009-09-17 15:07:35
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

Óö¼ûtang

гæ (ÕýʽдÊÖ)

¡ï
Сľ³æ(½ð±Ò+0.5):¸ø¸öºì°ü£¬Ð»Ð»»ØÌû½»Á÷
ÕâÒª¿´ÊÇÓÃʲôÈí¼þ²úÉúËæ»úÊýÁË£¬²»Í¬µÄÈí¼þÊDz»Í¬µÄ¡£
MatlabÖÐÖ±½ÓÊÇrand(n):Éú³É0µ½1Ö®¼äµÄn½×Ëæ»úÊý·½Õó rand(m,n):Éú³É0µ½1Ö®¼äµÄm¡ÁnµÄËæ»úÊý¾ØÕó (Ïֳɵĺ¯Êý)
C++ÖÐ ÓÃa + rand() % n

      ÆäÖеÄaÊÇÆðʼֵ£¬nÊÇÕûÊýµÄ·¶Î§¡£

¡¡¡¡a + rand() % (b-a+1) ¾Í±íʾ¡¡£á¡«£âÖ®¼äµÄÒ»¸öËæ»úÊý
ÈôÒª0~1µÄСÊý£¬Ôò¿ÉÒÔÏÈÈ¡µÃ0~10µÄÕûÊý£¬È»ºó¾ù³ýÒÔ10¼´¿ÉµÃµ½Ëæ»úµ½Ê®·ÖλµÄ10¸öËæ»úСÊý£¬ÈôÒªµÃµ½Ëæ»úµ½°Ù·ÖλµÄËæ»úСÊý£¬ÔòÐèÒªÏȵõ½0~100µÄ10¸öÕûÊý£¬È»ºó¾ù³ýÒÔ100£¬ÆäËüÇé¿öÒÀ´ËÀàÍÆ¡£
15Â¥2009-09-17 19:21:06
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ tc1788 µÄÖ÷Ìâ¸üÐÂ
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û