Ruby Academy · درس

Rational وBigDecimal

حسابات دقيقة

الدرس 4 من 413 خطوة

Rational وBigDecimal درس مجاني في Ruby Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Ruby Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Ruby Academy 4 دروس في المجموع.

لماذا الحساب الدقيق؟

تفقد الأعداد العشرية بعض الدقة. وللتعامل مع الأموال والكسور، توفر Ruby النوعين Rational وBigDecimal اللذين يحافظان على الدقة.

puts 0.1 + 0.2

إنشاء Rational

يمثل Rational كسرًا دقيقًا. اكتبوه باستخدام اللاحقة r أو باستخدام Rational(num, den).

puts (1r / 3)
puts Rational(2, 4)

تبسيط Rationals تلقائيًا

تُبسّط Rationals تلقائيًا إلى أبسط صورة، لذلك يصبح 2/4 مساويًا لـ 1/2.

puts Rational(6, 8)
puts Rational(10, 5)

حساب الكسور بدقة

يبقى جمع Rationals دقيقًا، بخلاف الأعداد العشرية. فثلث زائد ثلث زائد ثلث يساوي واحدًا تمامًا.

third = Rational(1, 3)
puts (third + third + third)

البسط والمقام

اقرؤوا مكوّنَي الكسر باستخدام numerator وdenominator.

r = Rational(3, 4)
puts r.numerator
puts r.denominator

تحويل Rationals

يحوّل to_f القيمة النسبية إلى عدد عشري عند الحاجة إلى تقريب عشري.

puts Rational(1, 8).to_f

تحميل BigDecimal

يتعامل BigDecimal مع الأعداد العشرية بدقة تامة، ولذلك فهو مثالي للتعامل مع الأموال. استوردوه أولًا من المكتبة القياسية.

require "bigdecimal"
a = BigDecimal("0.1")
b = BigDecimal("0.2")
puts (a + b).to_s("F")

استخدموا السلاسل النصية دائمًا

أنشئوا قيم BigDecimal من السلاسل النصية، وليس من الأعداد العشرية العائمة، حتى لا تضيع الدقة قبل بدء العمليات.

require "bigdecimal"
good = BigDecimal("1.1")
puts good.to_s("F")

حساب الأموال

يحافظ BigDecimal على دقة السنتات خلال العديد من العمليات.

require "bigdecimal"
price = BigDecimal("19.99")
qty = 3
total = price * qty
puts total.to_s("F")

تقريب BigDecimal

تتحكم round على قيمة BigDecimal بدقة في عدد المنازل العشرية.

require "bigdecimal"
n = BigDecimal("2.675")
puts n.round(2).to_s("F")

اختيار الأداة المناسبة

استخدموا Rational للكسور والنسب الدقيقة. واستخدموا BigDecimal للأموال العشرية الدقيقة. واستخدموا Float للعمليات العلمية السريعة عندما يكون الخطأ الطفيف مقبولًا.

require "bigdecimal"
puts Rational(1, 3)
puts BigDecimal("0.33").to_s("F")

تحقق سريع

تحققوا من الحساب الدقيق.

مراجعة

لقد تعلمتم الحساب الدقيق:

  • Rational للكسور الدقيقة التي تُبسَّط تلقائيًا
  • numerator وdenominator وto_f
  • BigDecimal من السلاسل النصية لإجراء حسابات مالية دقيقة
  • اختيار النوع المناسب للمهمة

وبذلك تكتمل دورة Ruby Numbers and Math.

puts (Rational(1, 2) + Rational(1, 3))
البدء مجانًا

تعلم Ruby مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
29
الدروس
109

الأسئلة الشائعة

هل درس «Rational وBigDecimal» مجاني؟

نعم — نص درس «Rational وBigDecimal» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Ruby Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Ruby Academy 4 دروس في المجموع.

ماذا ستتعلم في «Rational وBigDecimal»؟

حسابات دقيقة تتمرن على Ruby Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Ruby Academy؟

لا تُشترط خبرة سابقة. Ruby Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «Rational وBigDecimal»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Ruby Academy هذا؟

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

جميع الدروس في هذه الدورة

  1. الأعداد الصحيحة والعشرية
  2. الحساب والمعاملات
  3. وحدة Math
  4. Rational وBigDecimal
← العودة إلى Ruby Academy