تولید اعداد تصادفی در متلب
مواردی پیش می آید که شما نیاز به یک یا چند عدد تصادفی در برنامه خود دارید. متلب دستوراتی دارد که با آنها می توانید اعدادی تصادفی ایجاد کنید.
دستور rand :
این دستور قادر است اعداد تصادفی در بازه (0,1) بسازد. به مثال زیر توجه کنید :
نتیجه :
0.2785 0.9575 0.1576
0.5469 0.9649 0.9706
دستور (2,3)rand ، ماتریسی با 2 ردیف و 3 ستون می سازد که عناصر آن به صورت اعداد تصادفی در بازه (0,1) انتخاب شده اند.
اگر درون پرانتز دستور rand ، تنها یک عدد بنویسیم، مثلا (2)rand ، آنگاه دستور rand ، تعداد ردیف و تعداد ستون ها را برابر آن عدد می گیرد. به مثال زیر توجه کنید :
نتیجه :
0.9572 0.8003
0.4854 0.1419
مشاهده می کنید که ماتریس، دارای 2 ردیف و 2 ستون می باشد.
ایجاد اعداد تصادفی در بازه ای غیر از (0,1) با دستور rand :
برای آنکه اعداد تصادفی، در بازه ای غیر از بازه (0,1) باشند، تنها کافی است که از یک فرمول ساده استفاده کنیم. اگر اعداد تصادفی در بازه (0,1) را داشته باشیم، آنگاه با فرمول به کار رفته در مثال زیر، می توانیم اعداد تصادفی در بازه (a,b) بسازیم :
فرض کنید بخواهیم ماتریسی حاوی اعداد تصادفی در بازه (8,12) بسازیم، می نویسیم :
b=12;
A=a+(b-a)*rand(2,3)
نتیجه :
9.6870 11.1688 10.6230
11.6629 11.8380 8.1428
با سلام و عرض ادب؛
خیلی مفید بود.
بسیار سپاسگذارم.
دمتون گرم
درود بر شما
سلام عالی بود ممنون
ایا میتوان اعداد تصادفی با تابع توزیع اختیاری تولید کرد؟ برنامه ان موجود است
سلام وقتتون به خیر
من الان بخوام تعداد دفعات مختلف تاس بین 1تا6 چندتا احتمال وجود داره باید از تابع rind(1,6( استفاده کنم.
باتشکر
اگر بخواهیم تعدادی بیت تصادفی با sNR مختلف ایجاد کنیم چه طور باید برنامش رو بنویسیم؟