PDA

View Full Version : آرایه ای از آرایه های دوبعدی ؟



nazanin20
یک شنبه 12 دی 1389, 19:19 عصر
چجموری مثلا 20 تا ماتریسو سیو کنم ؟
و برای دسترسی بهشون چجوری عمل کنم؟

morteza271
یک شنبه 12 دی 1389, 19:44 عصر
كجا سيو كنين؟تو ديتا بيس؟
اگه ميخواين تو ديتابيس ذخيره كنين كه يه جدول با تعداد ستون به طول آرايتون...
اگر هم ميخواين ايجاد كنين كه خيلي راحت با دستور new ميتونين اين كار رو بكنين!
در مورد سوالتون بيشتر توضيح بدين تا دوستان بتونن كمكتون كنن!
موفق باشيد...

nazanin20
یک شنبه 12 دی 1389, 19:51 عصر
نه دیتابیس نه!
برنامه ام تو محیط کنسولی سی شارپ هستش
با همین دستورات new
درواقع من میخام آرایه ای از آرایه های دوبعدی داشته باشم !
و آرایه های دوبعدیم نباید ابعادشون باهم یجور باشه!
یکی 2*3
یکی مثلا 4*4


یا اینجوری بگم :
مثلا عنصر اول آرایه م باشه ماتریس 3*3
و عنصر دوم آرایه م باشه ماتریس 7*4
و الی آخر...

اگه بفرض درستش کنم اونوقت چجوری مثلا به ماتریس 12 ام مقدار بدم؟
متشکرم

unknown.unforgiven
یک شنبه 12 دی 1389, 19:56 عصر
آرایه ای از آرایه 2 بعدی میشه آرایه 3 بعدی، البته این فقط وقتی جواب میده که بخوای آرایت رو روی رم بریزی. اگه بخوای اطلاعات ذخیره بشه و از دیتابیس هم نخوای استفاده بکنی باید بری سراغ فایل.

georgiaro
یک شنبه 12 دی 1389, 21:08 عصر
Int[][][] A=new int[7][][];
A[0]=new int[2][3];
A[1]=new int[4][4];
...

البته مطمئن نیستم.
تست کن احتمالا جواب میده.

Reza_Yarahmadi
یک شنبه 12 دی 1389, 21:12 عصر
روش اول برای تعریف

int[][,] array = new int[10][,];

array[0] = new int[3, 3];
array[1] = new int[4, 7];

array[0][2, 2] = 125;
روش بعدی

List<int[,]> array = new List<int[,]>();

array.Add(new int[3, 3]);
array.Add(new int[4, 7]);

array[0][2, 2] = 125;
روش بعد ....
در کل روشهای زیادی برای اینکار وجود داره.
برای ذخیره هم میتونید کل array رو Serialize کنید ، زمان خوندن هم Deserialize کنید.

V0RTEX
یک شنبه 12 دی 1389, 23:01 عصر
میشه یک نوع از ماتریس تعریف کنی بعدا یک آرایه از اون بسازی

nazanin20
دوشنبه 13 دی 1389, 00:24 صبح
روش اول برای تعریف

کد:
int[][,] array = new int[10][,];array[0] = new int[3, 3];array[1] = new int[4, 7];array[0][2, 2] = 125;
روش بعدی


با تشکر از همه دوستان
یه سوال
من از روش اول استفاده کردم
اگه بخام مثلا عنصر دوم ارایه که میشه همون ماتریس دوم رو به تابع یا زیربرنامه ای بفرستم :
موقع فراخونی باید چطوری بنویسم
و
تابع گیرنده و خوانده شد آیتمایه ورودیش چجوری تعریف میشن
برای ماتریس دوبعدی اینجوری مینوشتم:


test(matrix)
.
.

publicstaticvoid test(int[,] matrix)
{
.
.


وللی برای این که ارایه ای از ماتریس نمیدونم چجوری بنویسم ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
مرسی

Reza_Yarahmadi
دوشنبه 13 دی 1389, 07:36 صبح
موقع فراخونی باید چطوری بنویسم
و
تابع گیرنده و خوانده شد آیتمایه ورودیش چجوری تعریف میشنفرقي با مورد خودتون نداره كافيه بصورت زير فراخواني كنيد

test(matrix[2])به اين نوع آرايه ، آرايه ناهموار گفته ميشه. اگه اين موضوع رو جسجتو كنيد به مطالب كاملي ميرسيد.