مرحبا بك في قسم الأسئلة والإجابات. نتمنى أن تستمتع بوقتك هنا عبر الاطلاع على المجالات المختلفة كما يمكنك السؤال أو الرد أو حتى التعليق على المشاركات بحرية مع مراعاة الاحترام المتبادل. إن أردت تقييم المشاركات فستحتاج للتسجيل باسم. لاحظ أن اسم المستخدم هنا ليس نفسه اسم المستخدم في الموقع الرئيسي وبالتالي لا يوجد رابط بين الاسمين حالياً.
مرحبًا بك في قسم الأسئلة والإجابات، حيث يمكنك طرح الأسئلة وانتظار الإجابة عليها من المستخدمين الآخرين.

الوسوم الأكثر شعبية

رياضيات علوم فيزياء
أنشط الأعضاء
هذا الشهر:
  1. anass - 84 النقاط
  2. إجابة - 45 النقاط
  3. همسة القلوب - 13 النقاط
  4. محمد حسن - 9 النقاط
  5. slurpfock - 9 النقاط
  6. الحقيقة - 9 النقاط
  7. mogultoby - 9 النقاط
  8. Arwa Gh - 7 النقاط
  9. ميس - 7 النقاط
  10. muhamad.math - 6 النقاط
Gute Mathe-Fragen - Bestes Mathe-Forum

2,669 أسئلة

2,142 إجابة

2,110 تعليقات

822 مستخدم

اكتب برنامج بلغه السي بلس بلس لترتيب عناصر مصفوفه

+3 تصويتات
2,155 مشاهدات
سُئل نوفمبر 3، 2012 في تصنيف عام بواسطة مجهول  

إجابة واحدة

0 تصويتات

يمكنك الإفادة من الروابط التالية:

http://www.dreamincode.net/forums/topic/74027-sorting-elements-in-an-array/

http://moolimani.blogspot.com/2012/01/write-c-program-to-sort-array-of.html

http://www.learncpp.com/cpp-tutorial/64-sorting-an-array-using-selection-sort/

الرابط الأخير يحوي شرحا مفصلا لكيفية إجراء التراتيب.

فيما يلي خلاصة عامة لترتيب عناصر مصفوفة بأي لغة عموماً:

  • أولاً: نبدأ بالبحث من أول عنصر في المصفوفة عن أصغر قيمة عبر مقارنة هذا العنصر مع باقي عناصر المصفوفة.
  • ثانياً: إذا وجدنا أصغر عنصر في المصفوفة نقوم بعدها بالتبديل بينه وبين العنصر الأول في المصفوفة. هذا يتطلب الاستعانة بمخزن ثالث مؤقت لإجراء عملية التبديل بين قيمتين.
  • ثالثاً: يتم إعادة الخطوتين السابقتين ولكن بدءً من العنصر التالي.

هذا يعني وجود حلقة تكرارية رئيسية تتغير قيمتها من 0 حتى عدد (عناصر المصفوفة -1) تؤدي وظيفة البحث بالإضافة لحلقة ثانوية تؤدي وظيفة المقارنة والتبديل عند تحقق الشرط بدء من موقع البحث المحدد بالحلقة الرئيسية.

سننسخ أحد الأكواد هنا.

#include<iostream.h>
#include<conio.h>
void exchange(int (&a)[],int &n);
int main()
{
 int a[10],size;
 clrscr();
 cout<<"Enter the Array size : ";
 cin>>size;
 cout<<"Enter the Array elements :\n";
 for(int i=0;i<size;i++)
  cin>>a[i];
 exchange(a,size);
 cout<<"After sorting :\n";
 for(i=0;i<size;i++)
  cout<<a[i]<<endl;
 getch();
 return 0;
}
void exchange(int (&a)[],int &n)
{
 for(int i=0;i<n;i++)
  for(int j=0;j<n;j++)
   if(a[i]<a[j])
  {
    int temp=a[i];
    a[i]=a[j];
    a[j]=temp;
   }
}
تم الرد عليه نوفمبر 3، 2012 بواسطة إجابة هاو (68,520 نقاط)  
عُدل نوفمبر 15، 2012 بواسطة إجابة
مشاريع شقيقة مواقع أسئلة وإجابات عربية برامج قد تحتاجها مواقع أسئلة وإجابات أجنبية
قسم الويكي
قسم الكتب
معالج الرياضيات
دردشة
ويكيبيديا أسئلة
منتدى الفيزياء التعليمي
شبكة الرياضيات رمز
موقع الكتب العربية
إجابات Google
مشغل الفلاش
موزيلا
كروم
برنامج الأسئلة والإجابات
ماث اكستشينج
فيزكس اكستشينج
ويكي:علوم
ويكي:رياضيات
ولفرام الفا
انسرز
ياهو أنسرز
...