گام پنجم آموزش برنامه نویسی c++
موضوع این گام:
اهداف کلی: شناخت ساختار تکرارwhile و نحو نوشتن آن دربرنامه نویسی
اهداف رفتاری و عمکردی:
انتظار میرود پس از مطالعه این جلسه بتوانید:
- نحو دستورwhile را شناخته و از آن برای ایجاد حلقه استفاده کنید.
- نحو دستور do..while را شناخته و تفاوت آن با دستور while را بیان کنید
سرفصل های تئوری:
- کاربرد while توضیح و عملكرد آن با فلوچارت
- روش کنترول حلقه while دربرنامه ها و خاتمه دادن به یك حلقه
- الگوریتم تجزیه عدد
- توضیح متغیربانک
- توضیح حرکت شکل وروش نمایش دادن آن
- دستور do..while
سرفصل های عملی:
- نوشتن برنامه ساده با استفاده از دستورحلقه while
- نوشتن برنامه ب.م.م و ک.م.م با الگوریتم نردبانی
- برنامه های گرافیکی حرکت اشکال دوبعدی با حلقه تکرار
مواد و تجهیزات لازم برای گام:
نحو دستور while
while (شرط اجرای حلقه)
{
دستورات;
}
به جای شرط اجرای حلقه، یك شرط قرار میگیرد و به جای دستورات، دستوری که باید تکرار شود قرار میگیرد. اگر مقدار شرط، صفر(یعنی نادرست) باشد، statement نادیده گرفته میشود و برنامه به اولین دستور بعد از while پرش میكند.
اگر مقدار شرط ناصفر(یعنی درست) باشد، statement اجرا شده و دوباره مقدار شرط بررسی میشود. این تکرار آن قدر ادامه مییابد تا این که مقدار شرط صفر شود.
مثال: برنامهای بنویسید كه یك دایره رنگی كوچك را در وسط صفحه ترسیم كند و به مرور زمان دایره شروع به بزرگ شدن كند. بزرگ شدن تا موقعی كه كاربر كلیدی را فشار نداده است ادامه پیدا می كند.
#include
#include
#include
#include
int main()
{
int errorcode;
int k,midx,midy;
initwindow(800,600);
midx=getmaxx( )/2;
midy=getmaxy( )/2;
k=1;
setcolor(2);
circle(midx,midy,k);
while ( !kbhit( ) )
k++;
circle(midx,midy,k);
delay(100);
}
closegraph();
return 0;
}
مثال: محاسبه حاصل جمع اعداد صحیح متوالی با حلقه while این برنامه مقدار1 + 2 + 3 + … + n را برای عدد ورودی n محاسبه میكند:
#include
#include
int main( )
{ int n, i=1;
cout << "Enter a positive integer: ";
cin >> n;
long sum=0;
while (i <= n)
sum += i++;
cout << "The sum of the first " << n << " integers is "
<< sum;
}
مثال:
توپ متحرك: در این برنامه یك توپ از وسط صفحه شروع به حركت می كند و در هر مرحله، مختصات آن مقداری تغییر می كند. توپ وقتی به حاشیه های صفحه می رسد، جهت خود را عوض می كند. حركت توپ تا موقعی كه كاربر كلیدی را نزده است ادامه می یابد.
.
#include
#include
#include
#include
int main ()
{
initwindow(800,600);
int maxx,maxy;
int radius = 15;
int length = 50;
char ch;
maxx=getmaxx( );
maxy=getmaxy( );
int i=radius;
int j=radius;
int x, Tx=0;
x=(maxx-length)/2;
int dx=1,dy=1;
setfillstyle(1,BLACK);
setcolor(WHITE);
while (!kbhit())
{
bar(i-radius,j-radius,i+radius,j+radius);
i+=dx;
j+=dy;
circle(i,j,radius);
delay(3);
if ((i>=maxx-radius)||(i<=radius)) dx=-dx;
if ((j<=radius) || (j>= maxy - radius)) dy=-dy;
}
getch ();
closegraph ();
return 0;
}
دستور do..while
ساختار do..while روش دیگری برای ساختن حلقه است. نحو آن به صورت زیر است:
به جای condition یك شرط قرار میگیرد و به جای statement دستور یا بلوکی قرار میگیرد که قرار است تکرار شود.
این دستور ابتدا statement را اجرا میكند و سپس شرط condition را بررسی میكند. اگر شرط درست بود حلقه دوباره تکرار میشود وگرنه حلقه پایان مییابد.
مثال: محاسبه حاصل جمع اعداد صحیح متوالی با حلقه do..while
این برنامه همان تأثیر مثال 1-5 را دارد:
#include
#include
int main()
{ int n, i=0;
cout << "Enter a positive integer: ";
cin >> n;
long sum=0;
do
sum += i++;
while (i <= n);
cout << "The sum of the first " << n << " integers is " << sum;
getch();
}
بخش پژوهش های دانش آموزی سایت تبیان
منبع:
مطالب مرتبط