logo

التلاعب بالنسب في C++ | المجموعة 1 (الحسابية)

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

في هذا المقال سوف نناقش معالجة النسب الحسابية في لغة C++ يتم استخدام الوظائف التالية:



  • نسبة_إضافة
  • نسبة_طرح
  • نسبة_الضرب
  • نسبة_تقسيم

1) نسبة_إضافة: يتم استخدام هذا الاسم المستعار للقالب ل إضافة نسبتين وإرجاع النتيجة في أبسط صورة . تقوم بإرجاع الثوابت المكونة من عضوين في أ و هو - هي يدل على البسط والمقام.
2) النسبة_الطرح: يتم استخدام هذا الاسم المستعار للقالب ل طرح نسبتين وإرجاع النتيجة في أبسط صورة . تقوم بإرجاع الثوابت المكونة من عضوين في أ و هو - هي يدل على البسط والمقام. هو - هي يطرح النسبة 2 من النسبة 1

CPP
// C++ program to demonstrate the working of // ratio_add and ratio_subtract #include    #include  // for ratio manipulation using namespace std; int main() {  // Declaring ratios  typedef ratio<5 4> ratio1;  typedef ratio<3 4> ratio2;  // Summing two ratios  typedef ratio_add<ratio1 ratio2> sum;  // Subtracting two ratios  typedef ratio_subtract<ratio1 ratio2> diff;  // printing sum of ratios  cout << 'The sum of ratios is : ';  cout << sum::num << '/' << sum::den;  cout << endl;  // printing difference of ratios  cout << 'The difference of ratios is : ';  cout << diff::num << '/' << diff::den;  cout << endl;  return 0; } 

الإخراج
The sum of ratios is : 2/1 The difference of ratios is : 1/2

3. النسبة_المضاعفة: يتم استخدام هذا الاسم المستعار للقالب ل ضرب نسبتين وإرجاع النتيجة في أبسط صورة . تقوم بإرجاع الثوابت المكونة من عضوين في أ و هو - هي يدل على البسط والمقام.
4. نسبة_التقسيم: يتم استخدام هذا الاسم المستعار للقالب ل تقسيم نسبتين وإرجاع النتيجة في أبسط صورة . تقوم بإرجاع الثوابت المكونة من عضوين في أ و هو - هي يدل على البسط والمقام. هو - هي يقسم النسبة 1 على النسبة 2

CPP
// C++ program to demonstrate the working of // ratio_multiply and ratio_divide #include    #include  // for ratio manipulation using namespace std; int main() {  // Declaring ratios  typedef ratio<5 4> ratio1;  typedef ratio<3 4> ratio2;  // Multiplying two ratios  typedef ratio_multiply<ratio1 ratio2> prod;  // Dividing two ratios  typedef ratio_divide<ratio1 ratio2> div;  // printing product of ratios  cout << 'The product of ratios is : ';  cout << prod::num << '/' << prod::den;  cout << endl;  // printing division of ratios  cout << 'The division of ratios is : ';  cout << div::num << '/' << div::den;  cout << endl;  return 0; } 

الإخراج
The product of ratios is : 15/16 The division of ratios is : 5/3

للحصول على المجموعة التالية، راجع هذه المقالة:



  • التلاعب بالنسب في C++ | المجموعة 2 (المقارنة)