Ruby

كيفية التعامل مع المتغيرات وإجراء عمليات بسيطة عليها في Ruby

كُتب بواسطة علي حمدي

قبل أن نبدأ في شرح كيفية التعامل مع المتغيرات يجب علينا بدايةً التعرف على ما هي المتغيرات، للتعرف على المتغيرات بشكل جيد ننصح بقراءة موضوع ما هي “المُتغيّرات” Variables و”المصفوفات” Arrays.

عندما ذكرنا في المقدمة أن شفرة Ruby البرمجية من أسهل الشفرات البرمجية بين أغلب لغات البرمجة لم يكن هذا من ضرب الخيال، إن لغة Ruby لا تتقيد بتعقيدات اللغات الأخرى خصوصًا في التعامل مع المتغيرات، بمعنى أنك تستطيع تعريف متغير يحتفظ بقيمة رقمية صحيحة وفي السطر التالي من برنامجك تستطيع الاحتفاظ بقيمة نصية داخله.

إجراء العمليات الحسابية للأرقام:

بعد أن عرفنا بعض المعلومات المتعلقة بالمتغيرات و Ruby سنبدأ في كتابة برنامج صغير يقوم بإجراء العمليات الحسابية الأساسية الأربع (جمع، طرح، ضرب، قسمة) على قيمتين ويعطينا الناتج، تابع الخطوات التالية:

  • قم بفتح محرر النصوص المفضل لديك (أنا أستخدم Sublime Text).
  • قم بكتابة الشفرة التالية بداخله:
x = 5
y = 3
puts "Output is:"
puts x+y
puts x-y
puts x*y
puts x/y
  • قم بحفظ الملف بأي اسم تحب، المهم أن ينتهي بامتداد (.rb)، على سبيل المثال variables.rb.
  • قم بفتح Terminal على نظام التشغيل الذي تعمل عليه وتوجه إلى مسار وجود الملف باستخدام أمر cd كما فعلنا في الموضوع السابق.
  • قم بتشغيل الملف باستخدام الأمر ruby متبوع باسم الملف.
  • ستجد ناتج العمليات الأربع قد طُبع على شاشة Terminal.

كيف حدث ذلك في الشفرة البرمجية السابقة؟ في أول سطرين قمنا بتعريف المتغيرين x و y وقمنا بإسناد قيمة رقمية صحيحة لكلٍ منهما، لاحظ أننا لم نذكر نوع البيانات التي يجب على المتغير أن يحتفظ بها؛ على عكس لغات البرمجة الأخرى التي تجبر المبرمج على تحديد نوع البيانات لكل متغير ولا يمكن تغييره، بعد ذلك بدأنا في طباعة ناتج العمليات الأربع بين المتغيرين x و y باستخدام الدالة puts.

إجراء العمليات الحسابية للأرقام العشرية:

بالتأكيد عند رؤيتك للنتائج في البرنامج السابق أحسست أنه يوجد شيء خاطئ في عملية القسمة، فإن ناتج قسمة 5 على 3 ليس بـ 1 إنما 1.67 لكن لماذا حصل ذلك؟

تختلف Ruby في تعاملها مع عملية القسمة، حيث أنه قسمة عدد صحيح على عدد صحيح آخر تنتهي بناتج صحيح بدون علامة عشرية، للحصول على الناتج الصحيح في القسمة قم بإضافة العلامة العشرية لأحد أرقام العملية أو لكليهِما، كالتالي:

  • قم بفتح محرر النصوص المفضل لديك.
  • قم بكتابة الشفرة التالية داخله:
x = 5.0
y = 3
puts x/y
  • قم بحفظ الملف بأي اسم تحب، المهم أن ينتهي بامتداد .rb.
  • قم بفتح Terminal على نظام تشغيلك وتوجه إلى مسار وجود الملف وقم بتشغيله.

إذا قمت بتجربة البرنامج السابق ستجد ناتج عملية القسمة قد تغير من 1 إلى 1.6666666666666667، بهذا الشكل تكون قد حصلت على الناتج الصحيح ويجب عليك مراعاة هذا الأمر عند التعامل مع القسمة في Ruby.

استخدام المتغيرات النصية:

قم بتجربة البرنامج التالي والذي سيقوم بطباعة نص مخزن داخل متغير:

  • قم بفتح محرر النصوص المفضل لديك.
  • قم بكتابة الشفرة التالية داخله:
str = "Hello World"
puts str
  • قم بحفظ الملف بأي اسم تحب، المهم أن ينتهي بامتداد .rb.
  • قم بفتح Terminal على نظام تشغيلك وتوجه إلى مسار وجود الملف وقم بتشغيله.

بالتأكيد أنك رأيت جملة “Hello World” على الشاشة بعد التنفيذ. أجل الأمر سهل، لكن لا يزال طبيعي إلى حدٍ ما.

استخدام المتغيرات النصية مع العمليات الحسابية:

يمكن أيضًا إدخال العمليات الحسابية مع النصوص، ويكون ذلك على الشكل التالي:

  • قم بفتح محرر النصوص المفضل لديك.
  • قم بكتابة الشفرة التالية داخله:
str = "Hello " + "World"
puts str
puts (str + " ") * 3
  • قم بحفظ الملف بأي اسم تحب، المهم أن ينتهي بامتداد .rb.
  • قم بفتح Terminal على نظام تشغيلك وتوجه إلى مسار وجود الملف وقم بتشغيله.

لا تستغرب من البرنامج السابق، ففي Ruby تستطيع إجراء العمليات الحسابية على النصوص أيضًا، باستخدام عملية الجمع في السطر الأول قمنا بجمع كلمة Hello مع كلمة World وإسناد هذه القيمة إلى المُتغير str ومن ثم وطبعنا الناتج، أما في السطر الثالث قمنا بإضافة فراغ في نهاية جملة “Hello World” بين القوسين وضربنا الناتج بـ 3، وبالفعل طبع لنا البرنامج جملة “Hello World” ثلاث مرات.

تنويه: ما قمنا به في البرامج المذكوره في هذا الموضوع يمكن القيام به على Interactive Ruby أيضًا، ولتتعرف على Interactive Ruby راجع الموضوع السابق.

عن الكاتب

علي حمدي

مبرمج ومطور ويب، بدأ البرمجة منذ عام 2011، صاحب موقع روبي عربي، أول موقع عربي يشرح لغة البرمجة Ruby في المحتوى العربي بشكل مفصل.

تعليق واحد

اترك تعليقًا

هذا الموقع يستخدم Akismet للحدّ من التعليقات المزعجة والغير مرغوبة. تعرّف على كيفية معالجة بيانات تعليقك.