logo

مشغل المعامل في C/C++

قبل أن نفهم حول المعامل المشغل أو العامل ، نحن بحاجة إلى معرفة هذا المصطلح المشغل أو العامل . في البرمجة، يخبر رمز المشغل المترجم بتنفيذ عملية معينة برقم معين بناءً على العملية التي تم تمريرها.

يتم استخدامه لإجراء عمليات مختلفة (+، -، *، /) على الأرقام. يساعد على تعزيز القدرة المنطقية والرياضية للمبرمج باستخدام عوامل التشغيل المختلفة في البرنامج. باستثناء هذه العوامل الأربعة الأساسية، هناك بعض العوامل الأخرى مثل مشغل المعامل (%)، عامل دقة النطاق (::)، وما إلى ذلك.

الباندا تذوب

في هذا القسم سنركز على عامل معامل.

مشغل المعامل في C/C++

ما هو عامل المعامل في C وC++؟

ال عامل معامل هو رمز يستخدم في لغات البرمجة المختلفة. ويشار إليه برمز النسبة المئوية ( % ). إنه عامل معامل يستخدم في العامل الحسابي. ويحدد الباقي. في بعض الحالات، قد يكون الباقي 0، فهذا يعني أن الرقم قابل للقسمة بالكامل على المقسوم عليه.

بناء الجملة:

 rem = a % b 

في بناء الجملة أعلاه، a و b عددان صحيحان، و % رمز (النسبة المئوية) هو عامل معامل يقوم بقسمة a على b وإرجاع الباقي.

احتمالات العودة لمشغل المعامل

فيما يلي الاحتمالات عند قسمة الرقم الأول على الرقم الثاني لإرجاع قيمة باقية فقط.

  1. إذا كان المتغير a قابلاً للقسمة بالكامل على الرقم الثاني (b)، فإنه يُرجع صفر (0)، أو يصبح الباقي 0.
  2. إذا لم يكن المتغير a قابلاً للقسمة تمامًا على الرقم الثاني (b)، فإنه يُرجع قيمة رقمية في النطاق [1، a - 1]. أو يمكننا القول إنها تُرجع الباقي إلى قيمة عددية غير صفرية.
  3. إذا كان الرقم الأول (أ) غير الصفر والرقم الثاني هو 0، فإنه يعطي خطأ في وقت الترجمة.

كيف يعمل Modulus Operator في C/C++؟

يعمل عامل المعامل مع معاملين يستقبلهما المستخدم النهائي. وبعد ذلك يقوم بقسمة الرقم الأول على الرقم الثاني وتحديد الباقي. دعونا نفهم المثال التالي الذي يوضح وظيفة عامل المعامل.

مثال : عندما نجري عامل المعامل بين 8 و5، يعني 8% 5، فإنه يعيد الباقي 3 لأنه عندما يتم قسمة 8 على 5، فإنه يعيد 1 كخارج القسمة و3 كباقي.

وبالمثل، 7% 2 تُرجع 1 كباقي لأنه عندما يتم قسمة 7 على 2، فإنها تُرجع 3 كحاصل و1 كباقي.

مثال 1: اكتب برنامجًا لتطبيق Modulus Operator في لغة C.

الوضع.ج

حرف الهروب جافا
 #include #include void main() { int a, b; int res; // store the resultant of modulus expression a = 5; b = 2; res = a % b; // define modulus expression printf(' Modulus returns a remainder: %d', res); res = b % a; // define modulus expression printf(' 
 Modulus returns a remainder: %d', res); a = 10; b = 5; res = a % b; // define modulus expression printf(' 
 Modulus returns a remainder: %d', res); getch(); } 

انتاج:

مميزات جافا 8
 Modulus returns a remainder: 1 Modulus returns a remainder: 2 Modulus returns a remainder: 0 

ملاحظة: عندما نقسم رقمًا عائمًا على رقم آخر، فإنه يُرجع خطأ المؤقت المترجم كمعامل غير صالح. ومن ثم يمكننا القول أنه لا يعمل مع الرقم العائم.

برنامج لتنفيذ عامل المعامل في C++.

Mode3.cpp

 #include using namespace std; int main(void) { int a, b; int res; // store the resultant of modulus expression a = 5; b = 2; res = a % b; // modulus expression cout &lt;<' modulus returns a remainder: ' << res; res="b" % a; expression cout <<'
 b="5;" b; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Modulus returns a remainder: 1 Modulus returns a remainder: 2 Modulus returns a remainder: 0 </pre> <h2>Modulus Operator in C++</h2> <p> <strong>Mode4.cpp</strong> </p> <pre> #include using namespace std; int main(void) { int a, b; int res; // store the result of modulus expression a = -5; b = 2; res = a % b; // modulus expression cout &lt;<' modulus returns a remainder: ' << res; b="-3;" res="a" % b; expression cout <<'
 return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Modulus returns a remainder: -1 Modulus returns a remainder: 2 Modulus returns a remainder: -1 </pre> <h3>Chaining of Modulus Operator</h3> <p>We can use the Chaining of Modulus Operator to perform modular division on more than two operands in a single statement. Following is the pseudo-code for the chaining of modulus operator, as given below.</p> <pre> res = operand1 % operand2 % operand3 % .... % operand_n </pre> <p>Let&apos;s consider the program of Chaining of Modulus Operator to take more than two operands.</p> <p> <strong>Mode5.cpp</strong> </p> <pre> #include using namespace std; int main() { // Use of modulus operator in C++ int x = 14; int y = 6; int z = 3; int modulo = x % y % z; // x % y returns 2, and 2 % z returns 2 cout &lt;&lt; &apos;Modulus is : &apos;&lt;&lt; modulo; } </pre> <p> <strong>Output:</strong> </p> <pre> Modulus is: 2 </pre> <hr></'></pre></'>

مشغل معامل في C++

Mode4.cpp

 #include using namespace std; int main(void) { int a, b; int res; // store the result of modulus expression a = -5; b = 2; res = a % b; // modulus expression cout &lt;<\' modulus returns a remainder: \' << res; b="-3;" res="a" % b; expression cout <<\'
 return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Modulus returns a remainder: -1 Modulus returns a remainder: 2 Modulus returns a remainder: -1 </pre> <h3>Chaining of Modulus Operator</h3> <p>We can use the Chaining of Modulus Operator to perform modular division on more than two operands in a single statement. Following is the pseudo-code for the chaining of modulus operator, as given below.</p> <pre> res = operand1 % operand2 % operand3 % .... % operand_n </pre> <p>Let&apos;s consider the program of Chaining of Modulus Operator to take more than two operands.</p> <p> <strong>Mode5.cpp</strong> </p> <pre> #include using namespace std; int main() { // Use of modulus operator in C++ int x = 14; int y = 6; int z = 3; int modulo = x % y % z; // x % y returns 2, and 2 % z returns 2 cout &lt;&lt; &apos;Modulus is : &apos;&lt;&lt; modulo; } </pre> <p> <strong>Output:</strong> </p> <pre> Modulus is: 2 </pre> <hr></\'>

تسلسل مشغل المعامل

يمكننا استخدام Chaining of Modulus Operator لإجراء التقسيم المعياري على أكثر من معاملين في عبارة واحدة. فيما يلي الكود الزائف لتسلسل مشغل المعامل، كما هو موضح أدناه.

 res = operand1 % operand2 % operand3 % .... % operand_n 

دعونا نفكر في برنامج Chaining of Modulus Operator ليأخذ أكثر من معاملين.

Mode5.cpp

 #include using namespace std; int main() { // Use of modulus operator in C++ int x = 14; int y = 6; int z = 3; int modulo = x % y % z; // x % y returns 2, and 2 % z returns 2 cout &lt;&lt; &apos;Modulus is : &apos;&lt;&lt; modulo; } 

انتاج:

 Modulus is: 2