PDA

View Full Version : مرتب سازی آرایه به همراه آرایه های دیگر



Collector
جمعه 23 دی 1390, 18:36 عصر
سلام

من در این برنامه آرایه Avg_2 را مرتب میکنم
همچنین نام و نام خانوادگی و غیره را که در یک رکورد وارد شدن رو هم مرتب میکنم.

یعنی اگر اندیس 5 بزرگتر از اندیس 2 Avg_2 بود بقیه آرایه های مربوط به آن رکورد هم مرتب میشوند.

دیگر آرایه ها رو درست مرتب نمیکند.

void bubbleSort(string *First_Name_2,string *Last_Name_2,float *Avg_2,int *Stu_Code_2,int *Birth_Day_2,string *Location_Birth_2, int size)
{
int i, j;
float temp;

for (i = (size - 1); i >= 0; i--)
{
for (j = 1; j <= i; j++)
{
if (Avg_2[j-1] > Avg_2[j])
{
temp = Avg_2[j-1];

Avg_2[j-1] = Avg_2[j];

Birth_Day_2[j-1] = Birth_Day_2[j];
Stu_Code_2[j-1] = Stu_Code_2[j];
First_Name_2[j-1] = First_Name_2[j];
Last_Name_2[j-1] = Last_Name_2[j];
Location_Birth_2[j-1] = Location_Birth_2[j];

Avg_2[j] = temp;
}
}
}
}

Cancer
جمعه 23 دی 1390, 21:21 عصر
سلام سلام سلام.
حوصله نداشتم کدی که گذاشتی ببینم چی میگه.
ولی:
شما n تا رکود داری که می خوای اونا رو مثلا بر اساس کد هر رکورد مرتب کنی؟
خوب الان مشکل چیه؟ الگوریتمیه؟ یا کد نویسیه؟ یا هر دو؟
خب بزن با یه الگوریتمی همون فیلد کد رو مرتب کنه و به دنبالش برای جابجایی با هر رکودی باقیه فیلدها رو هم جابجا کن دیگه.

Collector
شنبه 24 دی 1390, 15:43 عصر
سلام

مشکل حل شد ...

Cancer
شنبه 24 دی 1390, 17:03 عصر
سلام
چه خوب که مشکل حل شد.
من اون کامپایلر رو نداشتم.