يتم إعطاؤك مقتطف رمز يمثل جزءًا من برنامج لتصور معدلات بقاء الركاب في فئات الركاب المختلفة على متن السفينة. يستخدم الكود متغير سلسلة لبناء تمثيل جدولي لمعدلات البقاء. يمثل كل صف في الجدول فئة الركاب، ويمثل كل عمود إجمالي عدد الركاب وعدد الناجين في تلك الفئة.

وفيما يلي هيكل الجدول:

== الدرجة الثانية ==
المجموع |****** | 50%
حي |*** | 30%

== الصف الثالث ==
المجموع |****** | 75%
حي |****** | 60%

تم إنشاء الجدول باستخدام المنطق التالي:
- يمثل عدد الأحرف "*" نسبة إجمالي عدد الركاب أو الناجين في تلك الدرجة.
- المساحات المتبقية تمثل النسبة التكميلية للركاب أو الناجين.
- يتم أيضًا إلحاق النسبة المئوية لإجمالي الركاب أو الناجين في نهاية كل صف.

مهمتك هي إكمال تنفيذ وظيفة تسمى `visualize(data)`، والتي تأخذ مجموعة من الصفوف كمدخل. يمثل كل صف داخلي بيانات الراكب ويحتوي على العناصر التالية:
- Survived: قيمة منطقية (صحيح إذا نجا الراكب، خطأ خلاف ذلك)
- Pclass: عدد صحيح يمثل فئة الركاب (1، 2، أو 3)
- الاسم: سلسلة تمثل اسم الراكب (يمكن تجاهل هذه المشكلة)
- الجنس: سلسلة تمثل جنس الراكب (يمكن تجاهلها لهذه المشكلة)
- العمر: عوامة تمثل عمر الراكب (يمكن تجاهل هذه المشكلة)
- الأجرة: عوامة تمثل أجرة الراكب (يمكن تجاهلها لهذه المشكلة)

يجب أن تقوم وظيفة "التصور" بمعالجة البيانات المقدمة وفقًا للمتطلبات التالية:
1. احسب إجمالي عدد الركاب والناجين في كل فئة.
2. قم ببناء تمثيل سلسلة لبنية الجدول كما هو موضح في جدول المثال أعلاه.
3. املأ الجدول بالعدد الصحيح من الأحرف والمسافات "*".
4. إلحاق النسبة المئوية لإجمالي الركاب والناجين بكل صف.
5. قم بإرجاع تمثيل السلسلة النهائية للجدول.

ملحوظة:
- يجب حساب العدد الإجمالي للركاب والناجين على أساس عدد الركاب في كل درجة (Pclass).
- يجب تقريب نسبة الأحرف "*" في كل صف إلى أقرب عدد صحيح.

قم بتنفيذ الوظيفة `visualize(data)` واختبرها باستخدام مقتطف الشفرة المحدد.
{"source": "argilla/DistiCoder-dpo-binarized", "kind": "synthetic", "evolved_from": null}