تابعی در متلب

cng

عضو جدید
سلام تابعی می خواهم که اعداد تصادفی بین دو عدد دلخواه m,nتولید کند به شرطی اینکه اعداد تکراری نباشند
 

hex6789

عضو جدید
rand

rand

سلام تابعی می خواهم که اعداد تصادفی بین دو عدد دلخواه m,nتولید کند به شرطی اینکه اعداد تکراری نباشند

اصولا دستور rand برای ایجاد توابع تصادفی به کار میره، اگه توی help مطلب جستجو کنید این عبارتو حتما به جواب می رسید. این دستور option های زیادی داره و خیلی به درد بخوره، منتها برای اینکه تکراری نباشن من ندیدم option خاصی، بنابرین باید خودتون یه function تعریف کنید، اگر مشکلی داشتید بگید تا من راهنماییتون کنم دوباره :smile:
 

meytim

متخصص محاسبات عددی و MATLAB
کاربر ممتاز
سلام تابعی می خواهم که اعداد تصادفی بین دو عدد دلخواه m,nتولید کند به شرطی اینکه اعداد تکراری نباشند

نمونه راهگشا:
کد:
p=7; q=4; m=-0.3; n=2.6;
r=m+(n-m)*rand(p,q)

نگران تكراري بودن نباشيد، مگر اينكه تعداد اعداد بختي كه توليد مي‏كنيد بيشتر از تعداد زير باشد.


 

alihasti

عضو جدید
سلام
ضمن تشکر از جواب راهگشای شما، من هم همین سئوال برایم مطرح بود و یاداشتی را که شما برای این مسئله گذاشته بودید خواندم، فقط یک سئوال داشتم که متوجه نشدم و آن اینکه تعداد اعداد تولید شده "بیشتر از چه تعدادی نباشد "و اینکه چگونه می توانم مطمئن باشم که عدد تولید شده تکراری نباشد؟
با تشکر فراوان
 

meytim

متخصص محاسبات عددی و MATLAB
کاربر ممتاز
سلام
ضمن تشکر از جواب راهگشای شما، من هم همین سئوال برایم مطرح بود و یاداشتی را که شما برای این مسئله گذاشته بودید خواندم، فقط یک سئوال داشتم که متوجه نشدم و آن اینکه تعداد اعداد تولید شده "بیشتر از چه تعدادی نباشد "و اینکه چگونه می توانم مطمئن باشم که عدد تولید شده تکراری نباشد؟
با تشکر فراوان

ظاهراً اون عددی که به صورت تصویر گذاشته بودم، حذف شده. این بود:



این پیش فرض برای متلب ویرایش 7.4 (R2012a) هست. اگه ویرایش پایین تری استفاده می کنید باید روش twister رو انتخاب کنید. توی راهنمای متلب اینها رو نوشته؛ ببینید.
اون سؤالت که قرمزش کردم جوابش دیگه واضحه دیگه.
 

sajad.student

عضو جدید
سوال

سوال

ظاهراً اون عددی که به صورت تصویر گذاشته بودم، حذف شده. این بود:



این پیش فرض برای متلب ویرایش 7.4 (R2012a) هست. اگه ویرایش پایین تری استفاده می کنید باید روش twister رو انتخاب کنید. توی راهنمای متلب اینها رو نوشته؛ ببینید.
اون سؤالت که قرمزش کردم جوابش دیگه واضحه دیگه.

نتیجه این کسر چجوری باعث ایجاد تکراری نشدن میشه؟ چرا این عددها انتخاب شدن؟ این همون عددی هست که تو الگوریتم mt گفته شده؟
 

meytim

متخصص محاسبات عددی و MATLAB
کاربر ممتاز
نتیجه این کسر چجوری باعث ایجاد تکراری نشدن میشه؟ چرا این عددها انتخاب شدن؟ این همون عددی هست که تو الگوریتم mt گفته شده؟

ای بابا؛ من که فارسی نوشته بودم. نه قربان؛ ربطی به نتیجه این کسر نداره. این پریود تکراره. مثلاً فرض کن این کسر باشه یک میلیارد، اون وقت اگه شما یک میلیارد عدد بختی تولید کنید، عدد بعدیش حتماً تکراریه. (البته این عدد خیلی بزرگتر از یک میلیارده ها. برای اینکه بتونید تصور کنید یه عدد خیلی کوچیکتر مثال زدم.)
 

Similar threads

بالا