امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
توليداعداد تصادفي
نویسنده پیام
behzady آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,169
موضوع‌ها: 57
تاریخ عضویت: آبان ۱۳۹۰

تشکرها : 4094
( 6339 تشکر در 2085 ارسال )
ارسال: #12
RE: توليداعداد تصادفي
یک فقره پست فسیل شده رو از زیر خاک بیرون می کشم با یخ و ترشی:d
اصولا کامپایلر ها از این روش برای ساخت اعداد تصادفی استفاده می کنن
Linear congruential generator
اینم یه مثال ساده ازش
کد:
rand = 1234
------
rand=rand*109
rand=rand+89
rand=rand mod 251
'now use rand
البته روش های بهتری هم هست ولی سنگین هستندBiggrin
Combined Linear Congruential Generator
Cryptographically secure pseudorandom number generator

Monte Carlo method

به همه عشق بورز، به معدودی اعتماد کن و در حق کسی بدی نکن.
ویلیام شکسپیر

نباید ایمان به انسانیت را از دست دهید. انسانیت یک اقیانوس است؛ اگر قطرات اندکی از اقیانوس کثیف است، اقیانوس کثیف نمی‌شود.
مهاتما گاندی

يَا أَيُّهَا الَّذِينَ آمَنُواْ اسْتَعِينُواْ بِالصَّبْرِ وَالصَّلاَةِ إِنَّ اللّهَ مَعَ الصَّابِرِينَ
(آخرین ویرایش در این ارسال: ۳۱-فروردین-۱۳۹۲, ۱۵:۵۴:۴۸، توسط behzady.)
۳۱-فروردین-۱۳۹۲, ۱۵:۵۰:۱۷
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : babyy, mhpc2009, javaweb
Ghoghnus آفلاین
مدیر بخش
*****

ارسال‌ها: 1,497
موضوع‌ها: 270
تاریخ عضویت: آذر ۱۳۸۸

تشکرها : 1652
( 3938 تشکر در 1453 ارسال )
ارسال: #13
RE: توليداعداد تصادفي
(۱۳-اردیبهشت-۱۳۸۴, ۱۸:۵۶:۵۰)ha_60 نوشته است: تاييد نميشه Amaze
نقل قول: ميشه مستقيما تضمين كرد كه هيج عدد تصادفي تكراري توليدنميشه يا خير؟
اگه 11 عدد تصادفي صحيح بين يك تا 10 توليد كني حتما يكي تكراري خواهد بود و حتي هر 11 عدد هم مي توانند برابر باشند
و اما روش تا اونجا كه من مي دونم از روي تايمر اين عدد توليد ميشد و اگه از اون دستور Randomize استفاده نكني اين اعداد براي اجراي دوم با اجراي اول برابر خواهند بود (البته تو داس ويندوز رو نمي دونم)
هادی جان چرا 11؟ چی میشه که از هر11تا حداقل یک تصادفی هست؟

[تصویر:  a.jpg]

باور کنیم
همانگونه که در غیبت مقصریم در ظهور موثریم!
نیستیم؟

زیر شمشیر غمش رقص کنان باید رفت #  کان که شد کُشته ی او نیک سرانجام افتاد



 چشمک - بهینه شده برای ورژن جدید دانلود پروژه برنامه نويسي
۳۱-فروردین-۱۳۹۲, ۱۶:۳۲:۱۱
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : babyy
Di Di آفلاین
مدير بخش هك و كرك
*****

ارسال‌ها: 2,358
موضوع‌ها: 116
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 1816
( 4046 تشکر در 1321 ارسال )
ارسال: #14
RE: توليداعداد تصادفي
(۳۱-فروردین-۱۳۹۲, ۱۶:۳۲:۱۱)Ghoghnus نوشته است:
(۱۳-اردیبهشت-۱۳۸۴, ۱۸:۵۶:۵۰)ha_60 نوشته است: تاييد نميشه Amaze
نقل قول: ميشه مستقيما تضمين كرد كه هيج عدد تصادفي تكراري توليدنميشه يا خير؟
اگه 11 عدد تصادفي صحيح بين يك تا 10 توليد كني حتما يكي تكراري خواهد بود و حتي هر 11 عدد هم مي توانند برابر باشند
و اما روش تا اونجا كه من مي دونم از روي تايمر اين عدد توليد ميشد و اگه از اون دستور Randomize استفاده نكني اين اعداد براي اجراي دوم با اجراي اول برابر خواهند بود (البته تو داس ويندوز رو نمي دونم)
هادی جان چرا 11؟ چی میشه که از هر11تا حداقل یک تصادفی هست؟
اصلا گور باباي كامپيوتر و كامپايلر و تابع RND!!
شما يك كاغذ و خودكار بردار از بين اعداد صحيح 1 تا 10 ،‌يازده تا عدد بنويس بعد بشمار ببين چندتاش تكراري هست!!

۰۱-اردیبهشت-۱۳۹۲, ۱۵:۴۳:۴۲
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : babyy, Ghoghnus, Payman62, javaweb
Ghoghnus آفلاین
مدیر بخش
*****

ارسال‌ها: 1,497
موضوع‌ها: 270
تاریخ عضویت: آذر ۱۳۸۸

تشکرها : 1652
( 3938 تشکر در 1453 ارسال )
ارسال: #15
RE: توليداعداد تصادفي
(۰۱-اردیبهشت-۱۳۹۲, ۱۵:۴۳:۴۲)Di Di نوشته است:
(۳۱-فروردین-۱۳۹۲, ۱۶:۳۲:۱۱)Ghoghnus نوشته است:
(۱۳-اردیبهشت-۱۳۸۴, ۱۸:۵۶:۵۰)ha_60 نوشته است: تاييد نميشه Amaze
نقل قول: ميشه مستقيما تضمين كرد كه هيج عدد تصادفي تكراري توليدنميشه يا خير؟
اگه 11 عدد تصادفي صحيح بين يك تا 10 توليد كني حتما يكي تكراري خواهد بود و حتي هر 11 عدد هم مي توانند برابر باشند
و اما روش تا اونجا كه من مي دونم از روي تايمر اين عدد توليد ميشد و اگه از اون دستور Randomize استفاده نكني اين اعداد براي اجراي دوم با اجراي اول برابر خواهند بود (البته تو داس ويندوز رو نمي دونم)
هادی جان چرا 11؟ چی میشه که از هر11تا حداقل یک تصادفی هست؟
اصلا گور باباي كامپيوتر و كامپايلر و تابع RND!!
شما يك كاغذ و خودكار بردار از بين اعداد صحيح 1 تا 10 ،‌يازده تا عدد بنويس بعد بشمار ببين چندتاش تكراري هست!!
حرف شما درست ولی وقتی دقیق میگه11یعنی این وسط یه اتفاقی میوفته که یازده تا حداقل یکی تکراری هست!اون چیزی که باعث میشه هادی جان دقیقا بگه 11واسم جاله!

[تصویر:  a.jpg]

باور کنیم
همانگونه که در غیبت مقصریم در ظهور موثریم!
نیستیم؟

زیر شمشیر غمش رقص کنان باید رفت #  کان که شد کُشته ی او نیک سرانجام افتاد



 چشمک - بهینه شده برای ورژن جدید دانلود پروژه برنامه نويسي
۰۲-اردیبهشت-۱۳۹۲, ۱۴:۳۰:۴۹
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : babyy
behzady آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,169
موضوع‌ها: 57
تاریخ عضویت: آبان ۱۳۹۰

تشکرها : 4094
( 6339 تشکر در 2085 ارسال )
ارسال: #16
RE: توليداعداد تصادفي
(۰۲-اردیبهشت-۱۳۹۲, ۱۴:۳۰:۴۹)Ghoghnus نوشته است:
(۰۱-اردیبهشت-۱۳۹۲, ۱۵:۴۳:۴۲)Di Di نوشته است:
(۳۱-فروردین-۱۳۹۲, ۱۶:۳۲:۱۱)Ghoghnus نوشته است:
(۱۳-اردیبهشت-۱۳۸۴, ۱۸:۵۶:۵۰)ha_60 نوشته است: تاييد نميشه Amaze
نقل قول: ميشه مستقيما تضمين كرد كه هيج عدد تصادفي تكراري توليدنميشه يا خير؟
اگه 11 عدد تصادفي صحيح بين يك تا 10 توليد كني حتما يكي تكراري خواهد بود و حتي هر 11 عدد هم مي توانند برابر باشند
و اما روش تا اونجا كه من مي دونم از روي تايمر اين عدد توليد ميشد و اگه از اون دستور Randomize استفاده نكني اين اعداد براي اجراي دوم با اجراي اول برابر خواهند بود (البته تو داس ويندوز رو نمي دونم)
هادی جان چرا 11؟ چی میشه که از هر11تا حداقل یک تصادفی هست؟
اصلا گور باباي كامپيوتر و كامپايلر و تابع RND!!
شما يك كاغذ و خودكار بردار از بين اعداد صحيح 1 تا 10 ،‌يازده تا عدد بنويس بعد بشمار ببين چندتاش تكراري هست!!
حرف شما درست ولی وقتی دقیق میگه11یعنی این وسط یه اتفاقی میوفته که یازده تا حداقل یکی تکراری هست!اون چیزی که باعث میشه هادی جان دقیقا بگه 11واسم جاله!
اصل لانه کبوتر!
هرگاه 11 انتخاب ما بخواهد بین 10 عدد ممکن اتفاق بیوفتد حتما حداقل یکی از انتخاب ها تکراری است
(n لانه و n+1 کبوتر)

به همه عشق بورز، به معدودی اعتماد کن و در حق کسی بدی نکن.
ویلیام شکسپیر

نباید ایمان به انسانیت را از دست دهید. انسانیت یک اقیانوس است؛ اگر قطرات اندکی از اقیانوس کثیف است، اقیانوس کثیف نمی‌شود.
مهاتما گاندی

يَا أَيُّهَا الَّذِينَ آمَنُواْ اسْتَعِينُواْ بِالصَّبْرِ وَالصَّلاَةِ إِنَّ اللّهَ مَعَ الصَّابِرِينَ
۰۲-اردیبهشت-۱۳۹۲, ۱۵:۳۱:۰۰
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : Ghoghnus, babyy, Ambassador
mohammad_2012 آفلاین
تازه وارد

ارسال‌ها: 3
موضوع‌ها: 0
تاریخ عضویت: اردیبهشت ۱۳۹۲

تشکرها : 0
( 2 تشکر در 2 ارسال )
ارسال: #17
RE: توليداعداد تصادفي
با سلام خدمت اونایی ک در ب در دنبال اعداد تصادفی غیر تکراری میگردن Biggrin
خیلی راحته ببینید فرض میکنیم از بین 10 تا 20 پنج تا عدد میخوایم ک تصادفی انتخاب بشن
کافیه اعداد 10 تا 20 رو تو یه لیست قرار بدیم.بعد:
Int((10 * Rnd()) + 1)
عدد بدست اومده مثلا 4. حالا کافیه چهارمین عدد لیست چاپ بشه و البته همون عدد باید از لیست خارج کنین.
بعد باید از اون عدد جلوی rnd یکی کم بشه چون الان لیستمون 9تا عدد داره.یعنی :
Int((9 * Rnd()) + 1)
فکر کنم دیگه توضیح لازم نباشه...
نمیخواین ازم تشکر کنین ؟ Biggrin
۱۷-اردیبهشت-۱۳۹۲, ۱۴:۱۲:۲۵
ارسال‌ها
پاسخ
تشکر شده توسط : babyy
behzady آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 1,169
موضوع‌ها: 57
تاریخ عضویت: آبان ۱۳۹۰

تشکرها : 4094
( 6339 تشکر در 2085 ارسال )
ارسال: #18
RE: توليداعداد تصادفي
(۱۷-اردیبهشت-۱۳۹۲, ۱۴:۱۲:۲۵)mohammad_2012 نوشته است: با سلام خدمت اونایی ک در ب در دنبال اعداد تصادفی غیر تکراری میگردن Biggrin
خیلی راحته ببینید فرض میکنیم از بین 10 تا 20 پنج تا عدد میخوایم ک تصادفی انتخاب بشن
کافیه اعداد 10 تا 20 رو تو یه لیست قرار بدیم.بعد:
Int((10 * Rnd()) + 1)
عدد بدست اومده مثلا 4. حالا کافیه چهارمین عدد لیست چاپ بشه و البته همون عدد باید از لیست خارج کنین.
بعد باید از اون عدد جلوی rnd یکی کم بشه چون الان لیستمون 9تا عدد داره.یعنی :
Int((9 * Rnd()) + 1)
فکر کنم دیگه توضیح لازم نباشه...
نمیخواین ازم تشکر کنین ؟ Biggrin
Amaze
توضیح بیشترBiggrin

به همه عشق بورز، به معدودی اعتماد کن و در حق کسی بدی نکن.
ویلیام شکسپیر

نباید ایمان به انسانیت را از دست دهید. انسانیت یک اقیانوس است؛ اگر قطرات اندکی از اقیانوس کثیف است، اقیانوس کثیف نمی‌شود.
مهاتما گاندی

يَا أَيُّهَا الَّذِينَ آمَنُواْ اسْتَعِينُواْ بِالصَّبْرِ وَالصَّلاَةِ إِنَّ اللّهَ مَعَ الصَّابِرِينَ
۱۷-اردیبهشت-۱۳۹۲, ۱۵:۰۸:۴۴
وب سایت ارسال‌ها
پاسخ
mohammad_2012 آفلاین
تازه وارد

ارسال‌ها: 3
موضوع‌ها: 0
تاریخ عضویت: اردیبهشت ۱۳۹۲

تشکرها : 0
( 2 تشکر در 2 ارسال )
ارسال: #19
RE: توليداعداد تصادفي
ببینین عزیزان دلبندم Biggrin
اول اعداد یا گزینه هاتونو تو یه آرایه یا لیست قرار میدین مثلا 10 تا 20 رو تو لیست گذاشتیم حالا میخوایم از این لیست 5تا تصادفی انتخاب بشن.
حالا با این دستور:
call randomize
a=Int((10 * Rnd()) + 1)
الان یه عدد تصادفی از 1 تا 10 انتخاب میشه ک همون a میشه
فرض میکنیم 3 باشه.حالا باید بهش کد بدی که آیتم شماره 3 رو چاپ کنه و البته از لیست حذفش کنه.
حالا لیستمون 9تا آیتم داره:
a=Int((9 * Rnd()) + 1)
حالا یه عدد از 1 تا 9 انتخاب میشه.مثلا 8.آیتم شماره 8 چاپ بشه و از لیست حذف بشه.حالا لیست 8تا آیتم داره.همین روال رو ادامه میدیم تا 5تا عدد رو بدست بیاریم.از حلقه for اسنفاده کن.
۲۱-اردیبهشت-۱۳۹۲, ۱۶:۱۳:۳۵
ارسال‌ها
پاسخ
setroyd آفلاین
تازه وارد

ارسال‌ها: 24
موضوع‌ها: 10
تاریخ عضویت: اردیبهشت ۱۳۹۰

تشکرها : 2
( 17 تشکر در 12 ارسال )
ارسال: #20
RE: توليداعداد تصادفي
اومدیم باز تکراری داد ! شما میای با گول زدن خودت اینکارو میکنی چون هر باز میای چک میکنی شبیه لیست نباشه عدد شما ! این نمیشه فرمول این میشه Back dor فکر کنم دوستان دنبال یه الگریتمن تا یه arraye که بخوای دستکاری کنی !؟
۲۱-اردیبهشت-۱۳۹۲, ۱۶:۴۶:۵۰
ارسال‌ها
پاسخ
تشکر شده توسط : behzady
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #21
RE: توليداعداد تصادفي
(۲۱-اردیبهشت-۱۳۹۲, ۱۶:۴۶:۵۰)setroyd نوشته است: اومدیم باز تکراری داد !

تمام الگوریتم‌های تولید عدد تصادفی عدد تکراری میدن بعد از یک مدت!
۲۲-اردیبهشت-۱۳۹۲, ۰۳:۱۹:۰۲
وب سایت ارسال‌ها
پاسخ
mohammad_2012 آفلاین
تازه وارد

ارسال‌ها: 3
موضوع‌ها: 0
تاریخ عضویت: اردیبهشت ۱۳۹۲

تشکرها : 0
( 2 تشکر در 2 ارسال )
ارسال: #22
RE: توليداعداد تصادفي
دوباره سلام.
راه حلی که من دادم تکراری نمیده.به فرض RND به ما 3 بده.آیتم شماره 3 موجود در لیست چاپ میشه و از لیست حذف میشه.حالا اگر RND بازم 3 داد ؛ دیگه آیتم شماره 3 موجود در لیست اون عدد قبلی نیست چون آیتم شماره 3 پاک شده و یه عدد دیگه جایگزین شده.تست کن تا متوجه منظورم بشی
۲۴-اردیبهشت-۱۳۹۲, ۱۷:۱۶:۳۷
ارسال‌ها
پاسخ
تشکر شده توسط : Payman62


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  توليد اعداد تصادفي 4 رقمي بدون تكرار با ويژوال بيسيك 6 نارينا 1 8,195 ۰۴-آذر-۱۳۸۶, ۰۲:۵۹:۴۲
آخرین ارسال: Mamad2003

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 8 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS