#include <iostream>
using namespace std;
// خوارزمية Bubble Sort
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
// الممرات المتكررة عبر المصفوفة
for (int j = 0; j < n - i - 1; j++) {
// تبديل أماكن العناصر إذا كانت في الترتيب الخاطئ
if (arr[j] > arr[j + 1]) {
// تبديل القيم
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
// دالة الطباعة للمصفوفة
void printArray(int arr[], int n) {
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
cout << endl;
}
int main() {
// تعريف المصفوفة
int arr[] = {64, 34, 25, 12, 22, 11, 90};
int n = sizeof(arr) / sizeof(arr[0]);
cout << "المصفوفة قبل الفرز: ";
printArray(arr, n);
// استدعاء خوارزمية Bubble Sort
bubbleSort(arr, n);
cout << "المصفوفة بعد الفرز: ";
printArray(arr, n);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKLy8g2K7ZiNin2LHYstmF2YrYqSBCdWJibGUgU29ydAp2b2lkIGJ1YmJsZVNvcnQoaW50IGFycltdLCBpbnQgbikgewogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuIC0gMTsgaSsrKSB7CiAgICAgICAgLy8g2KfZhNmF2YXYsdin2Kog2KfZhNmF2KrZg9ix2LHYqSDYudio2LEg2KfZhNmF2LXZgdmI2YHYqQogICAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgbiAtIGkgLSAxOyBqKyspIHsKICAgICAgICAgICAgLy8g2KrYqNiv2YrZhCDYo9mF2KfZg9mGINin2YTYudmG2KfYtdixINil2LDYpyDZg9in2YbYqiDZgdmKINin2YTYqtix2KrZitioINin2YTYrtin2LfYpgogICAgICAgICAgICBpZiAoYXJyW2pdID4gYXJyW2ogKyAxXSkgewogICAgICAgICAgICAgICAgLy8g2KrYqNiv2YrZhCDYp9mE2YLZitmFCiAgICAgICAgICAgICAgICBpbnQgdGVtcCA9IGFycltqXTsKICAgICAgICAgICAgICAgIGFycltqXSA9IGFycltqICsgMV07CiAgICAgICAgICAgICAgICBhcnJbaiArIDFdID0gdGVtcDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQoKLy8g2K/Yp9mE2Kkg2KfZhNi32KjYp9i52Kkg2YTZhNmF2LXZgdmI2YHYqQp2b2lkIHByaW50QXJyYXkoaW50IGFycltdLCBpbnQgbikgewogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspIHsKICAgICAgICBjb3V0IDw8IGFycltpXSA8PCAiICI7CiAgICB9CiAgICBjb3V0IDw8IGVuZGw7Cn0KCmludCBtYWluKCkgewogICAgLy8g2KrYudix2YrZgSDYp9mE2YXYtdmB2YjZgdipCiAgICBpbnQgYXJyW10gPSB7NjQsIDM0LCAyNSwgMTIsIDIyLCAxMSwgOTB9OwogICAgaW50IG4gPSBzaXplb2YoYXJyKSAvIHNpemVvZihhcnJbMF0pOwoKICAgIGNvdXQgPDwgItin2YTZhdi12YHZiNmB2Kkg2YLYqNmEINin2YTZgdix2LI6ICI7CiAgICBwcmludEFycmF5KGFyciwgbik7CgogICAgLy8g2KfYs9iq2K/Yudin2KEg2K7ZiNin2LHYstmF2YrYqSBCdWJibGUgU29ydAogICAgYnViYmxlU29ydChhcnIsIG4pOwoKICAgIGNvdXQgPDwgItin2YTZhdi12YHZiNmB2Kkg2KjYudivINin2YTZgdix2LI6ICI7CiAgICBwcmludEFycmF5KGFyciwgbik7CgogICAgcmV0dXJuIDA7Cn0=