الخميس، 26 مارس 2015

المعامل الشرطي الثلاثي ؟ :

المعامل الشرطي الثلاثي ؟ :
يعتبر هذا المعامل هــو المعامـل الوحيـد الثلاثـي الموجـود فـي لغــة السـي
بلس بلس وهــو شـبيه للغايـة بالجملـة else/if ، أفضـل وسـيلة لشـرح هـذا
المعامل هـو تمثيله في كـود بسيط
سنقوم بكتابة كود يقوم بإيجاد القيمة المطلقة لأي عـدد تدخله.
CODE
1. #include <iostream>
2. using namespace std;
3.
4.
5. int main()
6. {
7. int Number=0;
8.
9. cin >> Number;
10. cout << "The Abs Value" << endl;
11. int Abs = Number < 0 ? -Number : Number;
12. cout << Abs << endl;
13.
14. return 0;
15. }
هـــناك متغيــران الأول هـــو المتغيــر Number والــذي ســيدخله المســتخدم
والمتغير Abs الذي سيتم إيجاد قيمة Number المطلقة وتخزينها فيه.
انظر إلى السطر 11 إن معـنى هذا السطر:
int Abs=Number < 0 ? -Number : Number;
أي قارن المتغيـر Number بالعـدد صـفر فـإذا كـان أصـغر فقـم بجعـل المتغيـر
سالباً وقم بإسـناد القيمـة الجــديد إلـى المتغيـر Abs وإلا فقـم بإسـناد نفـس
قيمة المتغير Number دون أي تغيير إلى المتغير Abs .
الآن سنقوم بكتابة نفس الكود السابق ولكـن هـذه المـرة باسـتخدام الجملـة
: if/else
CODE
1. #include <iostream>
2. using namespace std;
3.
4.
5. int main()
6. {
7. int Number=0;
8. cin >> Number;
9. cout << "The Abs Value" << endl;
10. int Abs;
11. if (Number < 0) Abs=(-Number);
12. else Abs=Number;
13. cout << Abs << endl;
14.
15. return 0;
16. }
تعرف على المكتبة cmath :
سنتعرف الآن على إحدى المكتبات التي أتت ورثتهـا لغـة السـي بلـس بلـس
من السي وهـي cmath .
التابعان floor و ceil :
يستخدم هذان التابعان للأعداد العشـرية حيـث يقومـان بتقريبهــما إلـى عـدد
صحيح، يقوم التابع floor بتقريب العـدد العشري إلى أقرب عـدد صـحيح قبـل
العـدد العشري فمثلاً لو كان لدينا العـدد 9.12 وقمت بتمرير العـدد كوسيط له
فسيقوم بإعادة العــدد 12 ، الكلمـة floor مـأخوذة مـن معــنى السـقف ، أمـا
التابع ceil فهـو عـكس التابع السابق فهـو يقوم بتقريب العـدد العشـري إلـى
عدد أكبر منـه فلو استخدمنا العــدد 1.12 لأعـاد التـابع ceil أكبـر عــدد صـحيح
بعـد العــدد العشـري السـابق ألا وهــو 13 . انظــر إلـى هـذا المثـال الكــودي
لاستخدام هذان التابعان المفيدان.
CODE
1. #include <iostream>
2. #include <cmath>
3. using namespace std;
4.
5. int main()
6. {
7. double Num=0 ,Val=0 ;
8.
9. cout << "Enter The Num: ";
10. cin >> Num;
11.
12. Val=floor(Num);
13. cout << "Number (floor) " << Val << endl;
14.
15. Val=ceil(Num);
16. cout << "Number (ceil) " << Val << endl;
17.
18. return 0;
19. }
حاول أن تفهـم الكـود السابق وفائدة التابعان floor و ceil .
التابعان pow و sqrt :
يستخدم التابع pow كأداة قوية إذا ما أردت حسـاب الأس أو القـوة لعــدد مـا،
يتم إستخدام هذا التابع هـكذا:
Number= pow (Number , power) ;
حيث العـدد Number هـو العـدد الذي تريد رفعـه والعـدد power هـو القـوة أو
الأس الذي تـود رفع العـدد Number إليها.
أما التـابع sqrt فيحسـب لـك الجـذر التربيعـي للعــدد ، ويسـتخدم هـذا التـابع
هـكذا:
Number= sqrt (Number);
حيث العـدد Number هـو العـدد الذي تـود حساب جذره التربيعي ، انظر إلـى
هذا المثال الكـودي:
CODE
1. #include <iostream>
2. #include <cmath>
3. using namespace std;
4.
5. int main()
6. {
7. double Num=0 ,Val=0 ;
8.
9. cout << "Enter The Num: ";
10. cin >> Num;
11.
12. Val=sqrt(Num);
13. cout << "Number (sqrt) " << Val << endl;
14.
15. cout << "Enter The Power " ;
16. cin >> Val;
17.
18. Val=pow(Num , Val);
19. cout << "Number (pow) " << Val << endl;
20.
21. return 0;
22. }

ليست هناك تعليقات:

إرسال تعليق