PDA

View Full Version : سوال: ایجاد ماتریسی از 0 و 1 به صورت رندم



nimnegah
دوشنبه 29 مهر 1387, 09:53 صبح
با سلام

من میخوام یه برنامه بنویسم که یه ماتریس با ابعادی که کاربر انتخاب میکنه ایجاد کنه و با استفاده ار یک Button اعداد 0 و 1 در ماتریس به صورت رندم بنویسه و با کلیک بر روی 0 اون خونه به 1 تغییر کنه و برعکس....

برای ایجاد این ماتریس باید از چه کنترلی استفاده کنم.. اگه در مورد کد برنامه توضیح بدبد ممنون میشم

parsamiga
دوشنبه 29 مهر 1387, 13:20 عصر
فکر نمی کنم کنترلی که بیشتر از دو بعد بخوای در نظر بگیری باشه ...
برای دو بعد از gridview استفاده کن ، هر خونه از اون رو به اندیس های ماتریست متصل میکنی و برای عدد رندم هم از تابع رندم استفاده می کنی


Random randObj = new Random( seed );
Console.Write(randObj.Next( ));


تبدیل صفر به یک هم که معلومه
------------------------------------------------------------------------------
آیا خداوند برای بنده خویش کافی نیست ؟

nimnegah
دوشنبه 29 مهر 1387, 17:57 عصر
اگه میشه بیشتر توضیح بدید...البته با کد سی شارپ....

بعد از ساختن این برنامه باید یه عدد مثلا 2 به عنوان موش و 3 به عنوان پنیر در نظر گرفته بشه و با استفاده از الگوریتم BFS به جستجوی مسیر تا رسیدن به پنیر ادامه بده...

یعنی همون برنامه ماز (maze)

Salar Ashgi
دوشنبه 29 مهر 1387, 22:54 عصر
سلام ، مثالی ساده در این مورد :



private void button1_Click(object sender, EventArgs e)
{
Random R = new Random();
int N = Convert.ToInt32(textBox1.Text);
int[,] a = new int[N, N];
for (int i = 0; i < N; i++)
{
for (int j = 0; j < N; j++)
a[i, j] = R.Next() % 2;
}
string s = "";
for (int i = 0; i < N; i++)
{
for (int j = 0; j < N; j++)
s += a[i, j].ToString() + " ";
s += "\n";
}
MessageBox.Show(s);
}


موفق و پیروز باشید !!!

nimnegah
سه شنبه 30 مهر 1387, 12:42 عصر
ممنون از راهنمایی شما..

حالا اگه بخواهیم این ماتریس رو در یک data gridview نشون بدیم چی؟

parsamiga
سه شنبه 30 مهر 1387, 13:37 عصر
سلام و برو حالشو ببر
----------------------------------------------------------------

تا به گیسوی تو دست ناسزایان کم رسد
هر دلی از حلقه‌ای در ذکر یارب یارب است

nimnegah
سه شنبه 30 مهر 1387, 13:52 عصر
سلام

واقعا از شما ممنونم parsamiga ........