في مقتطف الشفرة المحدد، يتم تزويدك بوظيفة تسمى "input_number" وهي المسؤولة عن قراءة رقم من الإدخال القياسي وإعادته كعدد صحيح غير موقّع. هدفك هو تحسين الوظيفة من خلال تنفيذ آليات معالجة الأخطاء.

مطلوب منك كتابة الدالة `input_number` التي لا تأخذ أي وسائط وترجع `Option<usize>`. يجب أن تقوم الوظيفة بالخطوات التالية:
1. ابدأ بعرض مطالبة للمستخدم، تطلب منه إدخال رقم صحيح.
2. تابع قراءة سطر من الإدخال من الإدخال القياسي.
3. بعد ذلك، قم بإزالة أي مسافات بادئة أو زائدة من سطر الإدخال.
4. بعد ذلك، حاول تحليل المدخلات المقصوصة كعدد صحيح غير موقّع باستخدام طريقة `parse::<usize>()`.
5. إذا نجحت عملية التحليل، فارجع `Some(number)`، حيث يمثل `number` القيمة التي تم تحليلها.
6. ومع ذلك، إذا فشلت عملية التحليل، قم بإرجاع "لا شيء".

تتمثل مهمتك في إكمال وظيفة "input_number" بدقة استنادًا إلى مقتطف الشفرة المقدم مع التأكد من معالجة جميع الأخطاء المحتملة أثناء عملية التحويل بشكل مناسب.
{"evolved_from": "In the provided code snippet, you are given a function called `input_number` which is responsible for reading a number from the standard input and returning it as an unsigned integer. Your objective is to enhance the function by implementing error handling mechanisms.\n\nYour task is to write the `input_number` function that takes no arguments and returns an `Option<usize>`. The function should perform the following steps:\n1. Start by prompting the user to enter a number.\n2. Proceed by reading a line of input from the standard input.\n3. Next, eliminate any leading or trailing whitespace from the input line.\n4. After that, make an attempt to parse the trimmed input as an unsigned integer using the `parse::<usize>()` method.\n5. If the parsing process is successful, return `Some(number)`, where `number` represents the parsed value.\n6. However, if the parsing process fails, return `None`.\n\nYour task is to thoroughly complete the `input_number` function based on the provided code snippet while ensuring that all possible errors during the conversion process are appropriately handled.", "kind": "synthetic", "source": "argilla/distilabel-evol-prompt-collective"}