لیستی از فعالیت به صورت تصادفی تولید شده و می‌خوام این فعالیت‌ها در لیستی جدید براساس روابط اولویتی که در یک ماتریس(need) بعنوان داده وارد شده قرار بگیرند. به عنوان مثال:

لیست تصادفی تولید شده:۴۵۳۱۰۲(۶ فعالیت از صفر تا ۵ داریم که تصادفی در یک لیست قرار گرفتند)
ماتریس روابط اولویت:
0 0 0 0 0 0
0 0 0 0 0 1
0 0 0 0 0 1
0 0 0 0 1 0
0 0 0 1 0 0
0 1 1 0 1 0
( فعالیت ۰ پیشنیاز ندارد. فعالیت ۱ و ۲ پیشنیازشان ۰ است. فعالیت ۳ پیشنیازش ۱ است. پیشنیاز ۴ فعالیت ۲و پیشنیاز ۵ فعالیت های ۱و۳و۴ است)

لیست جدیدی داریم که می خواهیم به این شکل پر شود که در لیست بالا فعالیتی که هیچ پیشنیازی ندارد وارد لیست جدید می‌شود(فعالیت ۰) ، بعد دوباره از اول لیست یعنی فعالیت ۴ بررسی صورت می‌گیرد و فعالیتی که پیشنیازش در لیست نیس انتخاب می‌شود یعنی فعالیت ۱ دوباره از اول لیست شروع می‌شود فعالیت ۳ پیشنیازش در لیست اول وجود ندارد پس انتخاب شده به لیست جدید وارد می شود. این مراحل تکرار می شود تا دیگر لیست اول خالی شود و لیست جدید به این شکل پر شده است: ۰۱۳۲۴۵

میخوام که اولین فعالیت لیست اینجا ۴ با همه فعالیتهای دیگه به ترتیب بررسی بشه مثلا ۴ با ۵ بررسی بشه که مقدار 0=[need[4,5 است پس ۴ با ۳،و با بقیه مقایسه میشه تا زمانی که یک پیشنیاز داشته باشه یعنی[4,2]need یک هست پس به سراغ فعالیت بعدی یعنی ۵ میره این کار تا جایی ادامه پیدا میکنه که فعالیتی پیدا بشه که پیشنیازش در لیست نباشه اون فعالیت به لیست جدید اضافه میشه. و بعد دوباره این بررسی از اول لیست فعلی یعنی فعالیت ۴ شروع میشه تا زمانی که دیگه فعالیتی در لیست جاری نباشه.

من در برنامه نویسی خیلی مبتدی هستم لطفا کمک کنید که چطور در محیطکنسول کد کنم.
ممنون

آخرین ویرایش: 15-06-2015 ???? 10:50، توسط afsane68