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

الجملة while/do :

الجملة while/do :
قد يتسـاءل الـبعض عــن السـبب وراء البـدء فـي موضـوع الحلقـات التكراريـة
بالجملـة while/do بدلاً من الحلقات الأخرى ، والسبب في ذلك يعـود إلى أن
هذه الحلقــة قريبـة للغايـة مـن الكــود السـابق وبالتـالي الجملــة goto ممـا
سيسهل الكثير من الشرح والفهـم.
الصيغـة العامـة لهذه الحلقـة هي كالتالي:
do
{
statement1;
statement2;
} while (expression) ;
بإمكاننا القول أن الحلقـة while/do تعـني قم بالدخــول فـي الكتلـة do وقـم
بتنفيذ الأوامر وفي حال الانتهاء قم باختبـار التعبيـر الـذي لـدى الكلمــة while
وفي حال صحتـه قـم بالرجـوع إلى مكان الكلمـة do .
بإمكاننا تعـديل الكـود السابق والاستغـناء عـن جميـع جملـة if وجملـة goto ،
انظر لهذا التعـديل في الكـود السابق:
1- do {
2- cout << "Enter the degree of course number " << i+1
3- << endl;
4- cin >> degree;
5- total=total+degree;
6- i++;
7- } while (i<5);
وبالرغـم من أن اسـتخدام هـذه الحلقـة قليـل إلا أن ذلـك لا يقلـل مـن قيمتهـا
وفائدتها العـظيمــة. وسـترى أنـه فـي بعـض الأحيـان لا يمكــنك حـل معضـلة
برمجيـة إلا بواسطـة هذه الجملة.
مثال عـملي:
سنقوم الآن بكتابة برنـامج يقوم بكتابة جدول الضرب لأي رقم تــود إظهــاره ،
وبالطبع سنستخدم فيه الحلقـة while/do .
CODE
1- #include <iostream>
2- using namespace std;
3-
4- int main()
5- {
6- double number=0;
7- int i=0;
8- cout << "please Enter The Number:\t";
9- cin >> number;
10- cout << endl << endl;
11- cout << "Number\t\tOther\t\tValue"<< endl;
12- do
13- {
14- cout << number << " \t\t";
15- cout << i << " \t\t";
16- cout << i*number;
17- cout << endl;
18- i++;
19- } while ( i<=10);
20- return 0;
21- }
في السطر 9 يقوم البرنامج بالطلب من المسـتخدم إدخـال الـرقم الـذي يريـد
طباعـة جدول الضرب لديـه بالنسبة للسطرين 10 و 11 فهـي تقـوم بتحسـين
المظهر العام للجدول.
يــدخل البرنــامج فــي الحلقـــة while/do وتقــوم الأســطر 14-17 بطباعـــة
العـددين المضروبين والناتج وتحسين المخرجـات كـذلك أمـا السـطر 18 فهــو
يقوم بزيادة العـدد الآخر المضروب زيادة واحدة حتى يستطيع البرنـامج ضـرب
العـدد الذي قمت بإدخاله في عـدد آخـر وتختبـر الجملــة while فيمـا إذا كـان
المضروب الآخر أقل من 11 وإلا فإنها ستخرج من الحلقـة وبالتـالي تخـرج مـن
البرنامج.
لقد انتهينا من الحلقـة while/do وقد تركنا بعض المواضيع للحلقتين التاليتين
وهـما for و while .

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

إرسال تعليق