183 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			183 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | |||
|  | title: Operators | |||
|  | localeTitle: العاملين | |||
|  | ---
# العاملين :
 | |||
|  | 
 | |||
|  | *   يسمح لك المشغلون بإجراء عمليات على بياناتك. | |||
|  | *   تسمى البيانات التي يتم تشغيلها باسم _المعامل_ . | |||
|  | *   الأنواع المختلفة لمشغلي C ++ هي: | |||
|  | *   _OPERANDS_ هي البيانات التي يقوم المشغل _بتنفيذها_ بأوامر معينة. | |||
|  | *   المشغلين من 3 أنواع: أحادي (يعمل على 1 المعامل) ، ثنائي (يعمل على 2 معاملات) ، ثلاثي (يعمل على 3 معاملات). | |||
|  | 
 | |||
|  | ### 1 مشغلات الإدخال / الإخراج -
 | |||
|  | 
 | |||
|  | *   تسمح لك هذه المشغلات بتوجيه الإدخال والإخراج. | |||
|  |      | |||
|  |     ## مهارة الإدخال ">>" ## | |||
|  |      | |||
|  |     يُستخدم لقراءة البيانات من الإدخال القياسي (بيان "cin"). | |||
|  |      | |||
|  |     ## عامل الإخراج "<<" | |||
|  |      | |||
|  |     يستخدم لإرسال الإخراج في بيان `cout` . | |||
|  |      | |||
|  | 
 | |||
|  | ### 2 المشغلين الحساب -
 | |||
|  | 
 | |||
|  | *   تتيح لك هذه الشركات إجراء العمليات الحسابية الأساسية. | |||
|  | 
 | |||
|  | 1.  _يضيف_ عامل التشغيل `+` المعاملين. | |||
|  |      | |||
|  | 2.  يقوم `-` المشغل _بطرح_ المعاملتين. | |||
|  |      | |||
|  | 3.  يقوم المشغل `*` _بضرب_ المعاملتين. | |||
|  |      | |||
|  | 4.  _يقسم_ `/` المشغل ويعطي _حاصل_ المعاملان. | |||
|  |      | |||
|  | 5.  _يقسم_ عامل التشغيل `%` ويعطي _الباقي_ من المنطقتين. (أو ، بالنسبة إلى القارئ المائل رياضياً ، `a % b` هو أساسًا نتيجة "mod b" | |||
|  |      | |||
|  |     ### مثال على استخدام العوامل الحسابية: | |||
|  |      | |||
|  |     \`\` \`حزب الشعب الكمبودي | |||
|  |      | |||
|  | 
 | |||
|  | # تتضمن
 | |||
|  | 
 | |||
|  | استخدام اسم للمحطة؛ | |||
|  | 
 | |||
|  | انت مين() { int a = 5؛ // المعامل الأول int b = 10؛ // المعامل الثاني | |||
|  | 
 | |||
|  |  `    cout << "+ operator " << a+b << "\n"; //Add  | |||
|  |     cout << "- operator " << ab << "\n"; //Subtract  | |||
|  |     cout << "* operator " << a*b << "\n"; //Multiply  | |||
|  |     cout << "/ operator " << b/a << "\n"; //Find Quotient  | |||
|  |     cout << "modulus operator " << b%a << "\n"; //Find remainder  | |||
|  |   | |||
|  |     return 0;  | |||
|  | `  | |||
|  | 
 | |||
|  | } \`\` \` | |||
|  | 
 | |||
|  | انتاج : | |||
|  | 
 | |||
|  |  `+ operator 15  | |||
|  |  - operator -5  | |||
|  |  * operator 50  | |||
|  |  / operator 2  | |||
|  |  modulus operator 0  | |||
|  | `  | |||
|  | 
 | |||
|  | [جرب الرمز بنفسك! :)](https://repl.it/Mge9) | |||
|  | 
 | |||
|  | ### عامل الزيادة:
 | |||
|  | 
 | |||
|  | *   `++` يُعرف باسم عامل الزيادة. يزيد من قيمة متغير عدد صحيح بواسطة 1. | |||
|  | 
 | |||
|  | نوعان من الزيادة: | |||
|  | 
 | |||
|  | *   الزيادة الأولية تقوم أولاً بزيادة القيمة ثم تستخدمها. مثال: `int a ; ++a;` | |||
|  | *   زيادة البريد أولاً يستخدم المتغير ثم زيادة عليه. مثال: `int b; b++;` | |||
|  | 
 | |||
|  | ### مشغل التناقص:
 | |||
|  | 
 | |||
|  | *   `--` يعرف باسم مشغل تناقص. يقلل من قيمة متغير عدد صحيح بواسطة 1. | |||
|  | 
 | |||
|  | نوعان من تناقص: | |||
|  | 
 | |||
|  | *   قبل decrement أولاً decrements القيمة ويستخدمها. مثال: `int a ; --a;` | |||
|  | *   يستخدم decrement بوست أولاً المتغير ثم تقليله. مثال: `int b; b--;` | |||
|  | 
 | |||
|  | مثال لمشغلي الزيادة والانقاص: | |||
|  | 
 | |||
|  |  `#include <iostream>  | |||
|  |  using namespace std;  | |||
|  |   | |||
|  |  int main()  | |||
|  |  {  | |||
|  |         int a = 3 ,b = 4;  | |||
|  |   | |||
|  |          // INCREMENT  | |||
|  |         cout<< "Value of int a PRE INCREMENTED : " << ++a << "\n";  | |||
|  |         cout<< "Value of int b POST INCREMENTED : " << b++ << "\n";  | |||
|  |         cout<< "Value of b is changed after using once : " << b << "\n";  | |||
|  |   | |||
|  |          // DECREMENT  | |||
|  |         cout << "\n"; //go to next line  | |||
|  |         a = 10; //Assigning a new value to a  | |||
|  |         b = 10; //Assigning a new value to b  | |||
|  |         cout << "Value of int a PRE DECREMENTED : " << --a << "\n";  | |||
|  |         cout << "Value of int b POST DECREMENTED : " << b-- << "\n";  | |||
|  |         cout << "Value of b is changed after using once : " << b << "\n";  | |||
|  |   | |||
|  |         return 0;  | |||
|  |  }  | |||
|  | `  | |||
|  | 
 | |||
|  | انتاج : | |||
|  | 
 | |||
|  |  `Value of int a PRE INCREMENTED : 4  | |||
|  |  Value of int b POST INCREMENTED : 4  | |||
|  |  Value of b is changed after using once : 5  | |||
|  |   | |||
|  |  Value of int a PRE DECREMENTED : 9  | |||
|  |  Value of int b POST DECREMENTED : 10  | |||
|  |  Value of b is changed after using once : 9  | |||
|  | `  | |||
|  | 
 | |||
|  | [جرب الرمز بنفسك! :)](https://repl.it/Mgg4/2) | |||
|  | 
 | |||
|  | ### 3: العلاقات العلائقية:
 | |||
|  | 
 | |||
|  | *   تخبرنا عوامل التشغيل هذه العلاقة بين المعاملات 2 وإرجاع قيمة منطقية (0 أو 1). إذا كانت العلاقة `true` فإنه يؤدي إلى 1. إذا كان realtion غير صحيح فإنه ينتج 0. | |||
|  |      | |||
|  | *   المشغلين العلائقيين الستة هم: | |||
|  |      | |||
|  |     1.  أقل من `<` | |||
|  |     2.  أكبر من `>` | |||
|  |     3.  أقل من أو يساوي `<=` | |||
|  |     4.  أكبر من أو يساوي `>=` | |||
|  |     5.  يساوي `==` | |||
|  |     6.  لا يساوي `!=` | |||
|  | 
 | |||
|  | ### 4: المشغلات المنطقية:
 | |||
|  | 
 | |||
|  | *   تجمع عوامل التشغيل هذه بين التعبيرات الخاصة بالعمليات المنطقية. هم انهم : | |||
|  | 
 | |||
|  | 1.  منطقية AND `&&` : يتم تقييمها إلى true إذا كانت كلتا القيمتين صحيحة. | |||
|  |      | |||
|  | 2.  منطقية أو `||` : تقيم إلى true إذا كانت أي قيمة صحيحة. | |||
|  |      | |||
|  | 3.  منطقي لا `!` : إذا كان _التعبير_ صحيحًا ، فإن _التعبير_ هو false. هذا المشغل يعكس قيمة الحقيقة وهو مشغل وحيد. | |||
|  |      | |||
|  |     ### 5\. المشغلين الدائمين: | |||
|  |      | |||
|  |     عامل التشغيل `?:` هو المشغل الثلاثي ، أو _المشغل الشرطي_ ، لأنه يمكن استخدامه لاستبدال بيان `if else` ، أو حتى `if else if` statement. بناء الجملة: | |||
|  |      | |||
|  | 
 | |||
|  | `condition ? ValueIfTrue : ValueIfFalse` . هذا يوسع إلى: | |||
|  | 
 | |||
|  |  `if(condition)  | |||
|  |  ValueIfTrue;  | |||
|  |  else ValueIfFalse;  | |||
|  | `  | |||
|  | 
 | |||
|  | إن استدعاء القيمة `ValueIfTrue` هو أمر خاطئ قليلاً ، لأنه لا يلزم أن يكون رقمًا. شيء من هذا القبيل: | |||
|  | 
 | |||
|  | `condition ? FirstLevelTrueValue : ConditionIfFalse ? SecondLevelTrueValue : SecondLevelFalseValue` يعمل أيضًا ، ويتم تفسيره كإجراء `if else if` : | |||
|  | 
 | |||
|  |  `if(condition)  | |||
|  |  FirstLevelTrueValue;  | |||
|  |  else if(ConditionIfFalse)  | |||
|  |  SecondLevelTrueValue;  | |||
|  |  else SecondLevelFalseValue;  | |||
|  | `  | |||
|  | 
 | |||
|  | وبالمثل، متداخلة `if` يمكن أيضا أن تكون البيانات باستخدام مشغلي الثلاثي. | |||
|  | 
 | |||
|  | _العربة ، أنت الآن تعرف ما هي الرموز. المقالة القادمة ستكون على وشك_ _تهانينا_ | |||
|  | 
 | |||
|  | **حظا سعيدا لكم جميعا** | |||
|  | 
 | |||
|  | **الترميز سعيدة! :)** | |||
|  | 
 | |||
|  | **لا تتردد في طرح أي استفسارات على صفحة GitHub [FreeCodeCamp](https://forum.freecodecamp.org/) أو [منتدى FreeCodeCamp.](https://forum.freecodecamp.org/)** |