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

تمرین آموزش گام چهارم در برنامه نویسی ++C

در جلسه گذشته مطالی در رابطه با شناخت ساختار تکرار  و نحوه  نوشتن آن در برنامه نویسی و ... آشنا شدیم. در این جلسه به تمرین در این زمینه می پردازیم.

 

چگونگی ایجاد دوره ها در یادگیری الکترونیکی

تمرین 1: [مثال کتاب 1 (صفحه 84)]

برنامه ای بنویسید که عددی از ورودی دریافت کند و مشخص کند که آیا آن عدد اول است یا خیر؟

 

#include

#include

using namespace std;

main( )

{

       int a,j=0;

       cout << "Enter a number to check prime:"<

        cin>>a;

       for(int i=1;i<=a;i++)

                     j++;

        if(j==2)

                    cout<<"prime";

        else

                    cout<<"Not prime";

        getch();

 }

 

تمرین 2:  [  مثال کتاب 2 (صفحه 48)]

برنامه ای بنویسید که 60 عدد از ورودی بگیرد و بزرگ ترین عدد را مشخص کند.

 

#include

#include

using namespace std;

main( )

{

         int a=0;max1=0;

         cout << "Enter number "<<"1"<<":";

         cin>>max1;

         for(int i=2;i<=10;i++)

         {

               cout << "Enter number "<

               cin>>a;

               if(max1

                    max1=a;

 }

          cout<<"Max: "<

          getch( );

 }

 

تمرین 3 :[ چالش 1]

توضیح سوال

علیرضا می خواهد با N بازی کند. بازی هپ به این صورت است که همه ی بازیکنان دور یک دایره » هُپ « نفر از دوستانش می نشینند و یک نفر بازی را با گفتن عدد یک شروع می کند. از این پس در هر مرحله، هر کس نفر سمت چپی اش در مرحله قبل عدد t را گفته باشد، او در این مرحله عدد t+1 را می گوید. و هر کس که در نوبتش باید عددی را می گفت که بر 5 اولین عدد را همیشه علیرضا می گوید و بازی .» هُپ « بخش پذیر بود، باید به جای آن بگوید k مرحله ادامه پیدا می کند. شما مثلاً بازی علیرضا، جواد و مهرداد در 66 مرحله ی اول به این صورت است: .» هُپ « باید بگویید علیرضا کلا چند بار گفته است.

مهرداد: 9 جواد: هپ علیرضا: 1
علیرضا: هپ مهرداد: 6 جواد: 2
جواد: 11 علیرضا: 7 مهرداد: 3
جواد: 8 علیرضا: 4

 

ورودی

در ورودی به ترتیب عدد N (تعداد دوستان علیرضا) و عدد K (تعداد مراحل انجام بازی) با فاصله آمده اند. N و K هر دو عدد طبیعی و کمتر از 1000 هستند.

 

خروجی

در یک خط تعداد بارهایی که علیرضا هپ می گوید را چاپ کنید.

 

ورودی و خروجی های نمونه

 

ورودی نمونه 1 92
خروجی نمونه 1 0
ورودی نمونه 2 53
خروجی نمونه 2 1

 

#include

using namespace std;

main()

{

           int ans=0;

           int nafar=0;

           int n;cin>>n;//doostan

           n++;

           int k;cin>>k;//marahel

           for(int i=1;i<=k;i++)

          {

                nafar++;

                if(nafar>n)

                       nafar=1;

                if(i%5==0&&nafar==1)

                       ans++;

 }

            cout<

            return 0;

 }

تمرین 4: [چالش 2]

توضیح سوال

پادشاهی لاینیار دقیقا 6 خط برای متروها دارد. n ایستگاه وجود دارد که به ترتیب حرکت مترو از 6 تا n نام گذاری شده اند.

در ایستگاه i ام ai نفر از مترو خارج می شوند و bi نفر وارد آن می گردند. مترو قبل از رسیدن به ایستگاه اول کاملا خالی است و در ایستگاه آخر هم تمامی مسافران موجود در مترو پیاده می شوند.

کار شما این است که کمترین مقدار ظرفیت مترو را به طوری که افراد داخل مترو هیچگاه از این تعداد بیش تر نشوند محاسبه

کنید. توجه کنید که در هر ایستگاه ابتدا کسانی که می خواهند پیاده شوند پیاده می شوند سپس افراد دیگر سوار می شوند.

 

ورودی

خط اول ورودی شامل عدد (n (2 ≤ n ≤ 1000 – تعداد ایستگاه های مترو می باشد.

سپس n خط دیگر به عنوان ورودی داده می شود که هر کدام از دو عدد صحیح ai و bi    (0 ≤ ai, bi ≤ 1000) - افرادی که در ایستگاه i ام از مترو خارج می شوند و افرادی که به آن وارد می شوند تشکیل شده است. ایستگاه ها به ترتیبی که مترو از آن ها عبور می کند، داده می شوند.

 

خروجی

یک عدد چاپ کنید – تعداد حداکثر دومینوهایی که می توانند در صفحه با شرایط فوق قرار بگیرند.

• تعداد افرادی که در یک ایستگاه پیاده می شوند از تعداد کل افرادی که در مترو موجود هستند بیشتر نمی شود؛

• در ایستگاه آخر همه ی مسافران پیاده می شوند و مترو خالی می گردد؛

• هیچ مسافری در ایستگاه آخر وارد مترو نمی شود؛

 

در مثال زده شده، ظرفیت بهینه ی مترو 6 است:

• در ایستگاه اول، 0 نفر قبل از رسیدن به ایستگاه در مترو هستند. سپس 3 نفر وارد آن می شوند؛ در نتیجه تعداد افراد موجود در قطار 3می شود.

• در ایستگاه دوم، 2 نفر از قطار خارج می شوند ( 1نفر می ماند). سپس 5 نفر وارد قطار می شوند؛ در نتیجه 6نفر در

قطار حاضر هستند.

• در ایستگاه سوم، , 4 نفر از قطار خارج می شوند ( 2نفر باقی می مانند). سپس 2 نفر وارد مترو می شوند؛ در نتیجه , 4 نفر در قطار حاضر هستند.

• در ایستگاه آخر، همه ی مسافرین از مترو خارج می شوند.

 

با توجه به این که تعداد مسافرین موجود در مترو هیچگاه از 6 بیشتر نمی شود، ظرفیت بهینه برابر 6 است.

 

ورودی و خروجی های نمونه

ورودی نمونه

 

4

30

5 2

2 4

04

خروجی نمونه

6

 

#include

using namespace std;

int main( )

{

        int n;

        cin>>n;int ans = 0;int m = 0;

        for(int i = 0;i

       {

              int a,b;

              cin>>a>>b;

              m-=a;

              m+=b;

              ans = max(ans,m);

 }

        cout<

 }

تمرین 5: [تمرین کتاب 1 ]

برنامه ای بنویسید که دو عدد بگیرد و اعداد زوج مابین این دو عدد را چاپ کند.

 

#include

using namespace std;

int main()

{

           int n1,n2,t=0;

          cout<<"Enter number1: ";

          cin>>n1;

          cout<<"Enter number2: ";

          cin>>n2;

          if(n1>n2)

 {

                 t=n1;

                 n1=n2;

                 n2=t;

 }

 for(int i=n1;i

{

                   if(i%2==0)

cout<

}

}

 

 تمرین 6: [تمرین کتاب 2 ]

برنامه ای بنویسید که تمام اعداد دو رقمی که بر مجموع ارقامشان بخش پزیر است را چاپ کند.

#include

using namespace std;

int main( )

{

        int a,b,t=0;

       for(int i=10;i<100;i++)

      {

            a=i%10;

            b=i/10;

            if(i%(a+b)==0)

                              cout<

       }

 }

برای کسب اطلاعات بیشتر  کلیک کنید.


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

تنظیم: یگانه داودی

مطالب مرتبط

گام چهارم آموزش برنامه نویسی

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