مدرسة جواكاديمي

هنا يمكنك تصفح مدرسة جو اكاديمي، المنهاج، اسئلة، شروحات، والكثير أيضاً

تنفيذ العمليات الحسابية

الحاسوب - الصف المواد المشتركة أول ثانوي

تنفيذ العمليات الحسابية

 قواعد أولوية تنفيذ العمليات الحسابية:

تستخدم لغة C++ قواعد الأولوية في تنفيذ العمليات الحسابية، وحسب التسلسل الآتي:

 أ- في حالة وجود الأقواس ()، يتم تنفيذ العمليات التي بداخلها أولاً.

ب- الضرب *، والقسمة /، وباقي القسمة %.

ج- الجمع +، والطرح -.

في حالة التكافؤ في الأولوية، يتم التنفيذ من اليسار إلى اليمين.

كتابة التعابير الحسابية بلغة ++C:
1- المثال الأول:

 

في هذا المثال تم وضع إشارة الضرب بين المعامل والمتغير فمثلًا 5y  تُكتب y * 5 وكذلك xy تُكتب x*y

2- المثال الثاني:

تحويل التعابير الحسابية إلى لغة c

نلاحظ في هذا المثال وجود أس وهو 2، عند التحويل إلى لغة ++c فإننا نقوم بفك الأس كالآتي y*y عمليتي الجمع والطرح متشابهتان مع التعابير الحسابية الجبرية. 

3- المثال الثالث:

تحويل التعابير الحسابية إلى لغة c2

هذا المثال يحتوي على كسر عادي فيه بسط ومقام وكما تعلمت في لغة Small Basic فإنه يتوجب كتابة البسط بين أقواس والمقام كذلك بين أقواس وذلك للمحافظة على أولوية العمليات الحسابية ، وتُحوّل إشارة الكسر إلى رمز عملية القسمة. المقام يحتوي على معامل ومتغير لا يوجد بينهما إشارة وهذا يعني أنّ بينهما عملية ضرب ويجب وضع رمز عملية الضرب بينهما.  

4- المثال الرابع:

تحويل التعابير الحسابية إلى لغة c3

هذا المثال لا يختلف عن الأمثلة السابقة حيث إنه يحتوي على متغير ويأتي مباشرة بعده قوس وهذا يعني أنّ بينهما عملية ضرب. وكذلك 3y-.

نشاط (2-12): كتابة التعابير الحسابية بلغة c++

بالتعاون مع أفراد مجموعتك اكتب التعابير الحسابية الآتية بلغة C++

التعبير الحسابي

التعبير بلغة C++

1 5 * x + y - 6
2 X + (Y+4)/ (3 * (x-Y))
3 (5 * x + y * y) / (-2*x + 6)
4 6 * (2 * x - 8) / (y*y*y)

 

 إيجاد ناتج التعبير الحسابي:

عند إيجاد قيمة تعبير حسابي في لغة C++، يجب مراعاة قواعد الأولوية  والشكل الآتي يوضح مثالاً على تسلسل تنفيذ تعبير حسابي وإيجاد نتيجته.

الشكل 2 - 20 إيجاد ناتج تعبير حسابي

ملحوظة: 

عند تنفيذ عملية باقي القسمة يجب الأخذ بالاعتبارات الآتية:

1- إشارة ناتج باقي القسمة نفس إشارة العدد المقسوم ولا يهتم لإشارة العدد المقسوم عليه كما في الأمثلة الآتية:

cout << 10% 7 <<endl;    //   3

cout <<-10% 7 <<endl;   //  -3

cout << 10%-7 <<endl;   //    3

cout <<-10%-7 <<endl;  //   -3 

2- إذا كان العدد المقسوم أقل من العدد المقسوم عليه فإن نتيجة باقي القسمة هي العدد المقسوم كما في المثال الآتي:

cout <<7%10 <<endl;   //     7

 

3- إذا كان أحد العددين (المقسوم أو المقسوم عليه)  كسري فيجب  تحويله إلى عدد صحيح، باستخدام الاقتران int ، حيث يعطي الجزء الصحيح من العدد الكسري مهما كانت قيمته، كما في المثال الآتي:

cout << int(10.6)%3 <<endl;    //   1  أوcout << int(10.6)%3 <<endl; 

نشاط (2-13)إيجاد قيمة التعابير الحسابية

بالتعاون مع أفراد مجموعتك جد قيمة d في  كلاً من التعابير الحسابية الآتية، إذا كانت a=9,b=4, c=-3:

  • d= a*((c*2+5)%b-5)

               9  * (( -3 * 2 +5 ) % 4 - 5)

                 9  * ((-6 +5 ) % 4 - 5) 

                9  * ( -1  % 4 - 5) 

                  9  * ( -1 - 5) 

                9  * - 6 

              d = - 54

 

  • d= (3*a+c)/(b*2%5)

          d= (3 * 9 + -3 )/( 4 * 2 % 5)

          d= ( 27 + -3 )/( 4 * 2 % 5)

          d=  24 /( 4 * 2 % 5)

          d=  24 /( 8 % 5)

          d=  24 /( 3)

           d = 8 

  • d=(7+c*5)/(2*(b-(a%3)))

         d=(7 + -3 * 5 ) / ( 2 * ( 4 -( 9 % 3)))   

         d=(7 + -15 ) / ( 2 * ( 4 -( 9 % 3)))   

         d=(-8 ) / ( 2 * ( 4 -( 9 % 3)))   

         d= -8  / ( 2 * ( 4 - 0))   

         d= -8  / ( 2 * )   

       d= -8  / (  )   

       d=  -1    

  • d=-a*((c*3+b)+(c%2)) 

         d= -9 * (( -3 * 3 + 4 ) + ( -3 % 2 )) 

           =   -9 * (( -9 + 4 ) + ( -3 % 2 )) 

           =   -9 * ( -5  + ( -3 % 2 )) 

            =   -9 * ( -5  +  -1 ) 

            =   -9 * ( -6 ) 

      d    =    54

سجل ما توصلت إليه في ملف المجموعة.

نشاط (2-14): إيجاد قيمة التعابير الحسابية

بالتعاون مع أفراد مجموعتك نفذ البرنامج الآتي المكتوب بلغة C++:

تشاط 2 - 14

ناتج تنفيذ البرنامج: 

تشاط 2 - 14output

عند قسمة عدد صحيح على عدد صحيح يكون الناتج عددًا صحيحًا. 

وعند قسمة عدد كسري على عدد كسري فإن الناتج عدد كسري. 

وعندما يكون أحد أطراف عملية القسمة عدداً كسريًا فإن الناتج دائمًا عدد كرسي.