PDA

View Full Version : سوال: پیدا کردن بزرگترین آرایه



R.B7199
سه شنبه 09 مهر 1392, 16:05 عصر
int[,] arr = new int[3, 2] { {1,17},{0,19},{2,20} };
int max = arr.Cast<int>().Max();

MessageBox.Show("Number" + max + "Is Max");

دو تا سوال دارم ، ممنون میشم اگه کسی کمکم کنه
سوال اول : چطوری میتونم نشون بدم که بزرگترین عدد که در اینجا 20 هست مربوط به عدد 2 هستش
سوال دوم مربوط به کد زیرهستش : میخوام به صورت نزولی مرتب کنم ، میخام بدونم اشکالش چیه
int i;
int[,] arr = new int[3, 2] { { 1, 17 }, { 0, 19 }, { 2, 20 } };
int max = arr.Cast<int>().Max();
int min = arr.Cast<int>().Min();


for ( i = max; i >= min; i-- ) ;

MessageBox.Show("" + i+ "");

R.B7199
یک شنبه 14 مهر 1392, 23:46 عصر
دوستان کسی میتونه کمکم کنه؟

pedram.11
دوشنبه 15 مهر 1392, 07:38 صبح
اینها آرایه دو بعدی هستن منظور از مرتب کردن چیه؟ زوج مرتبی که به مبدا نزدیک تر باشه؟

R.B7199
دوشنبه 15 مهر 1392, 22:25 عصر
دوست عزیز فرض کنیم اعداد 1 ، 0 و 2 شماره دانشجویی هستند و اعداد 17 ، 19 ، 20 معدل ، حالا میخوایم بالاترین معدل رو پیداکنیم و بگیم که مربوط به کدوم شماره دانشجویی هستش
میخوام بدونم کدم تا چه حد درست و غلط هستش و کد صحیح چیه
ممنون

pedram.11
سه شنبه 16 مهر 1392, 06:35 صبح
خب با این توصیف شما در حقیقت فقط یک عضو از زوج مرتب رو مورد برسی قرار میدید.
مرتب کردن بر اساس عضو دوم آرایه:
int[,] arr = new int[3, 2] { { 1, 17 }, { 0, 19 }, { 2, 20 } };
for(int i=0;i<arr.GetLength(0);i++)
for (int j = 0; j < arr.GetLength(0); j++)
{
if (arr[i, 1] > arr[j, 1])
{
int buf = arr[j, 1];
arr[j, 1] = arr[i, 1];
arr[i, 1] = buf;
}
}
for (int i = 0; i < arr.GetLength(0); i++)
MessageBox.Show(arr[i, 0].ToString() + ": " + arr[i, 1].ToString());

که اعضا به ترتیب عضو دوم زیر مجموعه ها مرتب میشن.