PDA

View Full Version : سوال: دستوری کوتاه برای ریختن یک سطر از آرایه دو بعدی در آرایه یک بعدی



Sal_64
شنبه 22 مهر 1391, 11:58 صبح
سلام - آرایه و نه لیست - آیا اینکار امکان پذیره (بدون حلقه)؟ - تشکر

مسعود اقدسی فام
شنبه 22 مهر 1391, 14:04 عصر
سلام. اگر هم دستور یا تابعی به این ترتیب باشه، داخلش حتما از حلقه استفاده شده. مهم نیست در ظاهر دیده نمی‌شه.

Sal_64
شنبه 22 مهر 1391, 16:46 عصر
سلام. اگر هم دستور یا تابعی به این ترتیب باشه، داخلش حتما از حلقه استفاده شده. مهم نیست در ظاهر دیده نمی‌شه.

اوهوم - ولی خب قصد من کوتاه کد نوشتن

m.a.sh
شنبه 22 مهر 1391, 16:53 عصر
سلام دوست عزیز میتونی طول آرایه رو بدست بیاری و با if انجامش بدی
int[,] myArray = new int[n, m];
myArray.GetLength(0) -> بدست آوردن بعد اول آرایه

myArray.GetLength(1) -> بدست آوردن بعد دوم آرایه
این هم دستور بدست آوردن طول آرایه (هم سطر هم ستون:قلب:)

afshin_1989
شنبه 22 مهر 1391, 17:33 عصر
int[,] array2d = new int[3,3]{
{1,2,3},
{4,5,6},
{7,8,9}
};
int[] array=new int[3];
System.Buffer.BlockCopy(array2d, 0, array,0,9);در مورد blockcopy بخون

مسعود اقدسی فام
شنبه 22 مهر 1391, 17:50 عصر
اگه قصد کوتاه نوشتن باشه بحثش جداست.

همین کدی که افشین خان نوشته ظاهرا اصلا حلفه نداره. اما سیستم چطور خانه‌های پشت سر هم حافظه رو می‌خونه؟ من معماری کامپیوترم زیاد قوی نیست. البته این کد از فضای نام #C هستش و نه دستور مستقیم خوندن از حافظه مثل اسمبلی.

البته این کد نمونه هستش و برای تمام خونه‌ها. هر ۹ عضو کپی می‌شه. کمی تغییر لازمه که نیت شما برآورده شه.

Sal_64
شنبه 22 مهر 1391, 17:56 عصر
سلام - دو تا سوال - اول اینکه در این دستور چطور باید یک سطر از آرایه دو بعدی مشخص کرد " array[0,x] " و دوم اینکه پارامتر پنجم چه شکلی باید محاسبه کرد با فرض اینکه آرایه مبدا از نوع string باشن ؟؟؟ تشکر

مهرداد صفا
یک شنبه 23 مهر 1391, 21:54 عصر
سلام - آرایه و نه لیست - آیا اینکار امکان پذیره (بدون حلقه)؟ - تشکر
سلام
بله. از راه های مختلف مثل:

int[][] array2d=new int[3][];
array2d[0]=new int[3]{1,2,3};
array2d[1]=new int[3]{4,5,6};
array2d[2]=new int[3]{7,8,9};
int[] array = new int[3];
array2d[0].CopyTo(array, 0);

mousa1992
یک شنبه 23 مهر 1391, 22:10 عصر
سلام دوست عزیز
شما میتونی برای تمام کارهایی که میخوای انجام بدی از قبل dll هایی رو اماده کنی و ازشون تو برنامه هات استفاده کنی(برای کوتاه کردن کدهاتون)
موفق باشی

amin.m1993
دوشنبه 24 مهر 1391, 08:38 صبح
شما میتونی از jagged array یا همون آزایه ی دندانه دار استفاده کنی یعنی همون کدی که دوستمون M.safa (http://barnamenevis.org/member.php?261217-M.safa) گذاشتند.
موفق باشید.

Sal_64
پنج شنبه 19 بهمن 1391, 13:09 عصر
سلام
یه سوال دیگه
حالا اگه عکس اینکار بخوایم انجام بدیم چی
یعتی ریختن یه آرایه یک بعدی در یک ردیف از آرایه دو بعدی ،دستوری در یک خط آیا براش وجود داره ؟