در این درس به شناخت ساختار تکرارwhile و نحو نوشتن آن دربرنامه نویسی می پردازیم...
عکس نویسنده
عکس نویسنده
بازدید :
زمان تقریبی مطالعه :

 گام پنجم آموزش برنامه نویسی 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 روش دیگری برای ساختن حلقه است. نحو آن به صورت زیر است:

do statement while (condition);

به جای 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();

}

 

 

 


بخش پژوهش های دانش آموزی سایت تبیان

 

منبع:

Ctalk.ir 

firststep.ir

 

مطالب مرتبط

تمرین گام آموزش پنجم

دیگر جلسات آموزشی