آموزش برنامه نویسی به زبان ++C

این وبلاگ جهت آموزش برنامه نویسی به زبان ++C برای دانش آموزان دبیرستان فرزانگان ایجاد شده است.
پنجشنبه, ۱۰ فروردين ۱۳۹۱، ۰۱:۲۷ ب.ظ

IF

 تا اینجا برنامه هایی که می‌نوشتیم خط به خط اجرا می‌شدند و هیچ خطی از برنامه وجود نداشت که اجرا نشده باشد.

اما گاهی می­خواهیم برنامه­هایی بنویسیم که در شرایط متفاوت نیازمند دستورات متفاوتی هستند.


فرض کنید از شما بخواهند که از داخل یک کیسه که در آن توپ­های رنگی ریخته شده است یک توپ در آورید. اگر توپی که درآورده­اید آبی بود یک دایره روی صفحه بکشید و اگر قرمز بود که مربع روی صفحه بکشید. خب اگر بخواهیم برنامه­ی چنین بازی را بنویسیم باید دو حالت را در نظر بگیریم که توپی که از کیسه درمی­آوریم ممکن است قرمز باشد یا آبی( حالت سومی هم وجود دارد؟ )

پس نیازمند استفاده از واژه­ی اگر هستیم تا با استفاده از آن حالات مختلف را بررسی کنیم و برای هر حالت دستورات مربوط را بنویسیم.

برای استفاده از شرط از دستور زیر کمک می گیریم:

if( شرط)
{
دستوراتی که در صورت برقرار بودن شرط انجام می­گیرند
}
else
{
دستوراتی که در صورت عدم برقراری شرط انجام می­گیرند
 
}

مثلا برنامه ی زیر را در نظر بگیرید:

main()
{
    cout << "please enter one number: " << endl;
    int a;
    cin >> a;
    if(a > 100) 
        cout << "your number  is more than 100" << endl;
else
        cout << "your number  is less than 100" << endl;
   getch();
}

خروجی این برنامه به صورت زیر می باشد:

توجه کنید که عدد 120  از ورودی گرفته شده است.

پس برنامه ی بالا یک عدد را از ورودی میگیرد و اگر عدد وارد شده بزرگتر از 100 بود پیغام متناسب با آن را چاپ می کند و در غیر این صورت پیغام مناسب دیگری را چاپ می کند.

نکته ی دیگر این برنامه که باید به آن توجه داشت این است که بعد از شرط و if از علامت {} استفاده نشده است. علت این کار این است که اگر تنها یک دستور بعد از if قرار بدهیم لزومی به استفاده از آکولاد نیست. اگر تعداد دستورات بیشتر از یکی شد باید حتما از علامت آکولاد استفاده کنیم.

همین امر در مورد else نیز برقرار است. به برنامه ی بالا توجه کنید.

چند نکته را در مورد شرط باید همواره به خاطر بسپاریم.

 بعد از if داخل پرانتز شرط را قرار می­دهیم.

 بعد از else هیچ شرطی قرار نمی­دهیم. خود کلمه ی else خلاف شرط if را هم در بر دارد.

 بعد از if و else از علامت ; استفاده نمی­کنیم. اگر از این علامت استفاده کنیم شرط را خاتمه داده­ایم.

 بعد از هر کدام از خطوط دستورات از علامت ; مثل برنامه­های قبلی استفاده می­کنیم.

 اگر بخواهیم مقدار متغیری را چک کنیم و ببینیم مثلا برابر با مقدار 100 هست یا نه از علامت ==استفاده میکنیم.  مثلا به صورت زیر عمل می­کنیم.

 
if(a == 100)
        cout << ”a barabar ast ba 100” << ”\n”;

 

آیا می­توانید توضیح دهید که اگر به جای a==100  از عبارت a=100 استفاده کنیم چه خطایی رخ خواهد داد؟

 

 اگر بخواهیم از چند شرط در کنار هم استفاده کنیم باید ارتباط بین شرط­ها را هم معین کنیم. به این صورت که اگر می­خواهیم بین شروط از علامت" و "  استفاده کنیم باید به جای علامت , از علامت && استفاده کنیم. همچنین برای علامت "یا" از || استفاده می­کنیم.

به عنوان مثال به برنامه­ی زیر دقت کنید:

main()
{
    int a;
    cout << "please enter one number:" << endl;
    cin >> a;
    if(a < 100 && a > 50)
        cout << "your number is between 50 and 100" << endl;
    getch();
}

این برنامه یک عدد را از ورودی گرفته و در صورتی که عدد وارد شده بزرگتر از 50 و کوچکتر از 100 باشد پیغام متناسب را چاپ می­کند. برای علامت و از && استفاده کردیم.

خروجی برنامه به ازای عدد 65 به شکل زیر است:

نکته ی دیگر برنامه ی بالا این است که else وجود ندارد! بنابراین برای هر if حداکثر یک else قرار می­دهیم.

 

استفاده بیشتر از یک if برای برنامه­هایی با بیش از دو حالت

گاهی می­خواهیم چند حالت را بررسی کنیم و برای هر حالت پیغام مناسب را چاپ کنیم. برای همین باید از چند if پشت سر هم استفاده کنیم. مثلا به برنامه­ی زیر توجه کنید:

main()
{
    int a;
    cout << "please enter one number: " << endl;
    cin >> a;
    if(a < 100)       cout << "your number is more than  100" << endl;
else if(a == 100)        cout << "your number is 100" << endl;
else      cout << "your number is less than 100" << endl;
    getch();
}

همانطور که در برنامه ی بالا مشاهده می کنید هر if یک else در ادامه ی خود( بلافاصله بعد از خود) دارد.

 

در جدول زیر برخی از علامت­هایی که در ریاضیات استفاده می­کنیم آمده­اند. این علائم در زبان C++ به شکل ستون دوم قرار می­گیرند.

زبان c++

ریاضیات

=

مقدار دهی

==

چک کردن تساوی

!=

>=

<=

a>50 && a<=100

50<a≤100

&&

And      و

||

Or        یا

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

در ادامه برنامه ی های حل شده در کلاس را حل خواهیم کرد.



نوشته شده توسط سارا نازاری
ساخت وبلاگ در بلاگ بیان، رسانه متخصصان و اهل قلم

آموزش برنامه نویسی به زبان ++C

این وبلاگ جهت آموزش برنامه نویسی به زبان ++C برای دانش آموزان دبیرستان فرزانگان ایجاد شده است.

IF

پنجشنبه, ۱۰ فروردين ۱۳۹۱، ۰۱:۲۷ ب.ظ

 تا اینجا برنامه هایی که می‌نوشتیم خط به خط اجرا می‌شدند و هیچ خطی از برنامه وجود نداشت که اجرا نشده باشد.

اما گاهی می­خواهیم برنامه­هایی بنویسیم که در شرایط متفاوت نیازمند دستورات متفاوتی هستند.


فرض کنید از شما بخواهند که از داخل یک کیسه که در آن توپ­های رنگی ریخته شده است یک توپ در آورید. اگر توپی که درآورده­اید آبی بود یک دایره روی صفحه بکشید و اگر قرمز بود که مربع روی صفحه بکشید. خب اگر بخواهیم برنامه­ی چنین بازی را بنویسیم باید دو حالت را در نظر بگیریم که توپی که از کیسه درمی­آوریم ممکن است قرمز باشد یا آبی( حالت سومی هم وجود دارد؟ )

پس نیازمند استفاده از واژه­ی اگر هستیم تا با استفاده از آن حالات مختلف را بررسی کنیم و برای هر حالت دستورات مربوط را بنویسیم.

برای استفاده از شرط از دستور زیر کمک می گیریم:

if( شرط)
{
دستوراتی که در صورت برقرار بودن شرط انجام می­گیرند
}
else
{
دستوراتی که در صورت عدم برقراری شرط انجام می­گیرند
 
}

مثلا برنامه ی زیر را در نظر بگیرید:

main()
{
    cout << "please enter one number: " << endl;
    int a;
    cin >> a;
    if(a > 100) 
        cout << "your number  is more than 100" << endl;
else
        cout << "your number  is less than 100" << endl;
   getch();
}

خروجی این برنامه به صورت زیر می باشد:

توجه کنید که عدد 120  از ورودی گرفته شده است.

پس برنامه ی بالا یک عدد را از ورودی میگیرد و اگر عدد وارد شده بزرگتر از 100 بود پیغام متناسب با آن را چاپ می کند و در غیر این صورت پیغام مناسب دیگری را چاپ می کند.

نکته ی دیگر این برنامه که باید به آن توجه داشت این است که بعد از شرط و if از علامت {} استفاده نشده است. علت این کار این است که اگر تنها یک دستور بعد از if قرار بدهیم لزومی به استفاده از آکولاد نیست. اگر تعداد دستورات بیشتر از یکی شد باید حتما از علامت آکولاد استفاده کنیم.

همین امر در مورد else نیز برقرار است. به برنامه ی بالا توجه کنید.

چند نکته را در مورد شرط باید همواره به خاطر بسپاریم.

 بعد از if داخل پرانتز شرط را قرار می­دهیم.

 بعد از else هیچ شرطی قرار نمی­دهیم. خود کلمه ی else خلاف شرط if را هم در بر دارد.

 بعد از if و else از علامت ; استفاده نمی­کنیم. اگر از این علامت استفاده کنیم شرط را خاتمه داده­ایم.

 بعد از هر کدام از خطوط دستورات از علامت ; مثل برنامه­های قبلی استفاده می­کنیم.

 اگر بخواهیم مقدار متغیری را چک کنیم و ببینیم مثلا برابر با مقدار 100 هست یا نه از علامت ==استفاده میکنیم.  مثلا به صورت زیر عمل می­کنیم.

 
if(a == 100)
        cout << ”a barabar ast ba 100” << ”\n”;

 

آیا می­توانید توضیح دهید که اگر به جای a==100  از عبارت a=100 استفاده کنیم چه خطایی رخ خواهد داد؟

 

 اگر بخواهیم از چند شرط در کنار هم استفاده کنیم باید ارتباط بین شرط­ها را هم معین کنیم. به این صورت که اگر می­خواهیم بین شروط از علامت" و "  استفاده کنیم باید به جای علامت , از علامت && استفاده کنیم. همچنین برای علامت "یا" از || استفاده می­کنیم.

به عنوان مثال به برنامه­ی زیر دقت کنید:

main()
{
    int a;
    cout << "please enter one number:" << endl;
    cin >> a;
    if(a < 100 && a > 50)
        cout << "your number is between 50 and 100" << endl;
    getch();
}

این برنامه یک عدد را از ورودی گرفته و در صورتی که عدد وارد شده بزرگتر از 50 و کوچکتر از 100 باشد پیغام متناسب را چاپ می­کند. برای علامت و از && استفاده کردیم.

خروجی برنامه به ازای عدد 65 به شکل زیر است:

نکته ی دیگر برنامه ی بالا این است که else وجود ندارد! بنابراین برای هر if حداکثر یک else قرار می­دهیم.

 

استفاده بیشتر از یک if برای برنامه­هایی با بیش از دو حالت

گاهی می­خواهیم چند حالت را بررسی کنیم و برای هر حالت پیغام مناسب را چاپ کنیم. برای همین باید از چند if پشت سر هم استفاده کنیم. مثلا به برنامه­ی زیر توجه کنید:

main()
{
    int a;
    cout << "please enter one number: " << endl;
    cin >> a;
    if(a < 100)       cout << "your number is more than  100" << endl;
else if(a == 100)        cout << "your number is 100" << endl;
else      cout << "your number is less than 100" << endl;
    getch();
}

همانطور که در برنامه ی بالا مشاهده می کنید هر if یک else در ادامه ی خود( بلافاصله بعد از خود) دارد.

 

در جدول زیر برخی از علامت­هایی که در ریاضیات استفاده می­کنیم آمده­اند. این علائم در زبان C++ به شکل ستون دوم قرار می­گیرند.

زبان c++

ریاضیات

=

مقدار دهی

==

چک کردن تساوی

!=

>=

<=

a>50 && a<=100

50<a≤100

&&

And      و

||

Or        یا

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

در ادامه برنامه ی های حل شده در کلاس را حل خواهیم کرد.

موافقین ۰ مخالفین ۰ ۹۱/۰۱/۱۰
سارا نازاری

نظرات  (۸)

۱۱ فروردين ۹۱ ، ۲۲:۱۷ سیده زینب موسوی
 چرا نمیشه؟؟
   graphics.h># include> همراه با جذر یا توان بیاد؟؟؟ منظورم math.h یا cmath !! 
    اگر اینطوری بنویسم محیطه گرافیکی رو نمیشناسه!!
پاسخ:
متوجه نمیشم؟.. منظورت اینه که دو تا دستور include رو با هم بذاریم؟ ... مشکلی نداره !
سلا خانوم نازاری! یه سوال داشتم اگر در امتحانات مشخص نشده بود که برنامه را باwhile یا for یا هر چیز دیگری بنویسیم میتونیم به دلخواه عمل کنیم؟
پاسخ:
بله، با هر کدوم که دلتون میخواد بنویسید
 slm.khanoom emtehane farda az 100% chand % sakhte??

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

مدرسه ی فرزانگان 3

ببخشید ایمیلم یادم رفته  بود    nargess.ovesy@gmail.com
ghjhgjjgj
tnx nejatam dadin az emtehane farda
hooman(kiau_omran)
9هغ087غل8

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی