تحويل أنواع البيانات
جزء من قسم الأساسيات في رحلة Ruby على Coddy — الدرس 31 من 88.
عندما تقرأ مدخلات باستخدام gets، فإن Ruby تعيد دائماً سلسلة نصية (string)، حتى لو قام المستخدم بكتابة رقم. يصبح هذا مشكلة عندما تحتاج إلى إجراء عمليات حسابية.
age = gets.chomp
puts age + 5سيؤدي هذا الكود إلى حدوث خطأ لأنه لا يمكنك إضافة رقم إلى سلسلة نصية. لإصلاح ذلك، تحتاج إلى تحويل السلسلة النصية إلى رقم باستخدام .to_i (إلى عدد صحيح) أو .to_f (إلى عدد عشري):
age = gets.chomp.to_i
puts age + 5الآن إذا قام المستخدم بكتابة "20"، سيكون الناتج 25. استخدم .to_f عندما تحتاج إلى أرقام عشرية:
price = gets.chomp.to_f
puts price * 1.1يمكنك أيضاً تحويل الأرقام مرة أخرى إلى سلاسل نصية باستخدام .to_s. هذا مفيد عندما تحتاج إلى دمج الأرقام مع النصوص دون استخدام إدراج السلاسل النصية (string interpolation):
count = 42
puts "Count: " + count.to_sالتحدي
سهلاقرأ رقمين من المستخدم كمدخلات. المدخل الأول هو عدد صحيح (integer) والمدخل الثاني هو عدد عشري (float).
احسب واطبع ما يلي في أسطر منفصلة:
- مجموع كلا الرقمين
- حاصل ضرب كلا الرقمين (multiplication)
تأكد من تحويل كل مدخل إلى النوع الرقمي المناسب قبل إجراء الحسابات.
على سبيل المثال، إذا كانت المدخلات هي 5 و 2.5، يجب أن تكون المخرجات:
7.5
12.5ورقة مرجعية
عند قراءة المدخلات باستخدام gets، تقوم Ruby دائماً بإرجاع سلسلة نصية. لإجراء العمليات الحسابية، قم بتحويل السلاسل النصية إلى أرقام باستخدام .to_i (إلى عدد صحيح) أو .to_f (إلى عدد عشري):
age = gets.chomp.to_i
puts age + 5استخدم .to_f للأرقام العشرية:
price = gets.chomp.to_f
puts price * 1.1قم بتحويل الأرقام مرة أخرى إلى سلاسل نصية باستخدام .to_s:
count = 42
puts "Count: " + count.to_sجرّب بنفسك
# قراءة المدخلات
integer_num = gets.chomp.to_i
float_num = gets.chomp.to_f
# المهام المطلوبة: اكتب الكود الخاص بك أدناه لحساب المجموع وحاصل الضرب
# طباعة النتائج (اطبع المجموع وحاصل الضرب في أسطر منفصلة)يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع7حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على مدخلات المستخدم2المتغيرات وأنواع البيانات
الأرقام والمتغيراتنوع البيانات Stringنوع البيانات Booleanنوع البيانات Symbolالتحقق من أنواع البياناتقواعد التسميةملخص - إنشاء المتغيرات8الحلقات التكرارية
حلقة For مع النطاقاتحلقة WhileBreakNextمراجعة - المضروب (Factorial)حلقة Timesحلقة Untilالحلقات المتداخلةمراجعة - الإدخال الديناميكي (Dynamic Input)3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - العمليات الرياضية البسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
الإخراج باستخدام putsالإخراج باستخدام print و pالإخراج باستخدام المتغيراتالإدخال باستخدام getsدالة Chompتحويل أنواع البياناتمراجعة - حاسبة العمرمراجعة - صح أم خطأ