إعلان
تعلم الآن

الخوارزميات و هياكل البيانات التحدي الأول - حل التمرين الخامس بلغة C++

المطلوب

أكتب برنامج يطلب من المستخدم إعطائه عدد يمثل عدد عناصر مصفوفة إسمها arr و يخزنه في متغير إسمه n.
ملاحظة: عدد عناصر المصفوفة يجب أن يكون أكبر من صفر.
بعدها ينشئ المصفوفة arr و يحدد أن عدد عناصرها هو العدد الذي أدخله المستخدم.
بعدها يطلب من المستخدم إدخال عدد صحيح لكل عنصر فيها.
بعدها يعرض للمستخدم جميع قيم عناصر المصفوفة التي قام هو بإدخالها مع وضع مسافة فارغة بين كل قيمتين.
في الأخير, يقوم بترتيب قيم عناصر المصفوفة من الأكبر إلى الأصغر و من ثم يعرضها له من جديد.


الحل بلغة C++

#include <iostream>

int main() {
	
	int n;
	int temp;
	int * arr;

	do {
		std::cout <<("Enter arr length: ");
		std::cin >> n;
	}
	while (n <= 0);

	arr = new int[n];

	for (int i = 0; i < n; i++)
	{
		std::cout << "Enter arr[" << i << "]: ";
		std::cin >> arr[i];
	}

	std::cout << "\nCurrent order\n";
	for (int i = 0; i < n; i++)
	{
		std::cout << arr[i] << " ";
	}

	for (int i = 0; i < n - 1; i++)
	{
		for (int j = i + 1; j < n; j++)
		{
			if (arr[j] > arr[i])
			{
				temp = arr[i];
				arr[i] = arr[j];
				arr[j] = temp;
			}
		}
	}

	std::cout << "\n\nAfter descending order\n";
	for (int i = 0; i < n; i++)
	{
		std::cout << arr[i] << " ";
	}

	char end; std::cin >> end;
	return 0;

}
		

سنحصل على النتيجة التالية في حال تم إدخال نفس القيم التي تم تعليمها باللون الأصفر عند التشغيل.

Enter arr length: 5
Enter arr[0]: 7
Enter arr[1]: 3
Enter arr[2]: 1
Enter arr[3]: 6
Enter arr[4]: 4

Current order
7 3 1 6 4

After descending order
7 6 4 3 1
إعلان
دورة قواعد بيانات MySQL في هذه الدورة ستتعلم أساسيات قواعد البيانات و أوامر SQL، العلاقات (Join) بين الجداول، Normalization مع تطبيق مشروع متكامل. سعر الدورة الآن هو 20 ريال سعودي فقط بدلاً من 600 ريال
سعر الدورة الآن هو 20 ريال سعودي فقط بدلاً من 600 ريال
تعلم الآن

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة