الدرس الحادي عشر 11:شرح Do while loop في c++ وتمثيلها على function
Do While Loop
احد جمل التكرار (الدوران) الموجوده في لغه C++
وهي مشابهه ل while loop الا انها تختلف في جزئيه وحيده عن ال while loop & for loop وهي :
ان جمله التكرار do while loop تنفذ على الاقل مره واحده بعكس باقي دوال التكرار التي قد لاتنفذ من اول مره اذا كانت قيمه الشرط F
وياتي هاذا لسبب ان التحقق من الشرط في هاذه الداله بعد تنفيذ الجمل الداخله فيها ؛ اي انها تنفذ الجمل الخاصه بها ثم تتحقق من الشرط لعمل دوره اخرى ام لا !؟
ونلاحظ في هاذه الحاله انها سوف تنفذ مابداخلها على الاقل مره واحده
ونستعمل هاذا النوع كثيرا في عمل برامج على شكل قائمه خيارات menu لامتيازها بهاذه الخاصيه
وياتي نظام دوران الdo while loop على الشكل الموضح بالصوره :

الشكل العام لل do while loop :
do
{
//هنا جمل البرنامج
}while (الشرط);
نلاحظ كتابه فاصله منقوطه بعد الشرط (بعد الجمله ) بعكس جمله do whileالعاديه
كود بسيط :
do {
cout<<"HELLO!";
} while(x!=0);
في كودنا السابق حتى لو Xتساوي 0 من اول مره سوف يطبع HELLO مره على الاقل وكما هو الحال في جمله while العاديه فان الدوران مستمر الى ان تصبح قيمه x تساوي 0
امثله :
مثال يطبع كلمه hi مره واحده على الاقل الى ان يدخل المستخدم رقم 0
#include <iostream>
#include <string>
using namespace std ;
void main ()
{int x=50;
do
{
cout<<"hi"<<endl;
cin>>x;
} while (x!=0);
cout<<"The End"<<endl;
system("pause"); }
مثال لحساب مجموع قيم مدخله بحيث كل مره يسال المستخدم هل انتهيت ؟
اذا كانت الاجابه نعم يتوقف ثم يطبع المجموع ينفذ مره واحده على الاقل
اذا كانت الاجابه نعم يتوقف ثم يطبع المجموع ينفذ مره واحده على الاقل
#include <iostream>
#include <string>
using namespace std ;
void main ()
{double x=0,sum=0;
char sto='n';
do
{
cout<<"\n enter the salary to add:\t ";
cin>>x;
sum=sum+x;
cout<<"you are fenished ? (N\\Y) \t";
cin >>sto;
}while (sto!='y' && sto != 'Y');
cout<<"THANK YOU \n THE SUM = \t"<<sum <<endl;
system("pause"); }
#include <string>
using namespace std ;
void main ()
{double x=0,sum=0;
char sto='n';
do
{
cout<<"\n enter the salary to add:\t ";
cin>>x;
sum=sum+x;
cout<<"you are fenished ? (N\\Y) \t";
cin >>sto;
}while (sto!='y' && sto != 'Y');
cout<<"THANK YOU \n THE SUM = \t"<<sum <<endl;
system("pause"); }
مثال يطبع كلمه hello
10 مرات كما هو الحال باستخدام for لكن بال do while
#include <string>
using namespace std ;
void main ()
{int i=0;
do
{
cout<<"hello"<<endl;
i++;
} while (i<10);
system("pause"); }
Comments
Post a Comment