تالار گفتمان مانشت
تولید آرایه تصادفی - نسخه‌ی قابل چاپ

تولید آرایه تصادفی - αɾια - ۳۱ خرداد ۱۳۹۷ ۰۱:۲۲ ب.ظ

سلام ،میخوام یک ماتریس m*n با درایه های ۰ و ۱ داشته باشم.
به طوری که هر ستون فقط یک عنصر ۱ داشته باشه و هر سطر حداقل ۳تا عنصر ۱.

کد:
m=4;n=15;
a=rand(m,n)
b=ones(m,n);
for i=1:m
    for j=1:n
        if a(i,j)>=0
            b(i,j)=0;
        end
    end
end
b
این کد تولید ماتریسِ ولی شرطُ چجوری بهش اضافه کنم Huh

RE: تولید ماتریس تصادفی شرطی! - noori759 - 31 خرداد ۱۳۹۷ ۰۲:۲۲ ب.ظ

(۳۱ خرداد ۱۳۹۷ ۰۱:۲۲ ب.ظ)Katerina Petrova نوشته شده توسط:  سلام ،میخوام یک ماتریس m*n با درایه های ۰ و ۱ داشته باشم.
به طوری که هر ستون فقط یک عنصر ۱ داشته باشه و هر سطر حداقل ۳تا عنصر ۱.

کد:
m=4;n=15;
a=rand(m,n)
b=ones(m,n);
for i=1:m
    for j=1:n
        if a(i,j)>=0
            b(i,j)=0;
        end
    end
end
b
این کد تولید ماتریسِ ولی شرطُ چجوری بهش اضافه کنم Huh
اولا برای همه ماتریس ها نمی شه همچنین ماتریس ساخت مثلا ماتریس ۲ در ۵ مساله جواب نداره !‌!‌!
بعدشم اگر جواب داشته باشه لزوما یه جواب نداره و بیش از یک جواب داره مثلا متاتریس ۲ در ۱۰۰ تعداد حالتاش خیلی زیاده می شه ۳ از ۱۰۰
ضرب در ۳ از ۹۷ ضرب در ۲ به توان ۹۴ !‌!‌!‌

شما فکر کنم می خواید یه ماتریس رندوم بسازید ؟؟؟

RE: تولید ماتریس تصادفی شرطی! - αɾια - ۳۱ خرداد ۱۳۹۷ ۰۵:۵۲ ب.ظ

(۳۱ خرداد ۱۳۹۷ ۰۲:۲۲ ب.ظ)noori759 نوشته شده توسط:  اولا برای همه ماتریس ها نمی شه همچنین ماتریس ساخت مثلا ماتریس ۲ در ۵ مساله جواب نداره !‌!‌!
بعدشم اگر جواب داشته باشه لزوما یه جواب نداره و بیش از یک جواب داره مثلا متاتریس ۲ در ۱۰۰ تعداد حالتاش خیلی زیاده می شه ۳ از ۱۰۰
ضرب در ۳ از ۹۷ ضرب در ۲ به توان ۹۴ !‌!‌!‌

شما فکر کنم می خواید یه ماتریس رندوم بسازید ؟؟؟
سلام ،بله میخوام ماتریس تصادفی بسازم و با توجه به m , n اون حداقل ۳ ای که گفتم تغییر میکنه.
اره میخوام چندتا جواب داشته باشه.
حالا این شرایطُ چجوری تو کد تعریف کنم؟

RE: تولید آرایه تصادفی - αɾια - ۰۳ تیر ۱۳۹۷ ۰۲:۰۱ ب.ظ

اینو روش یه بازنویسی زدم و شد:
تولید یک آرایه تصادفی شامل ۰ و ۱ با طول معلوم(مثلا ۳۸) و تعداد ۱ های مشخص(مثلا ۳۰).
حالا کدش چجوری میشه Blush

RE: تولید آرایه تصادفی - Behnam‌ - ۰۴ تیر ۱۳۹۷ ۰۵:۳۹ ق.ظ

(۰۳ تیر ۱۳۹۷ ۰۲:۰۱ ب.ظ)Katerina Petrova نوشته شده توسط:  اینو روش یه بازنویسی زدم و شد:
تولید یک آرایه تصادفی شامل ۰ و ۱ با طول معلوم(مثلا ۳۸) و تعداد ۱ های مشخص(مثلا ۳۰).
حالا کدش چجوری میشه Blush
گوگل کنید random number generation with fixed hamming weight.
یه راهِ احتمالا غیربهینه‌اش که توو ذهنم هست اینه که یک set با اعداد ۱ تا ۳۸ بسازید، بعد ۳۰ تا پشت سر هم ازش عنصر حذف کنید. هر بار که عنصری رو بر میدارید، بیت معادش رو ۱ کنید.