loading...
برنامه نویسی
سجاد بازدید : 2920 جمعه 30 دی 1390 نظرات (0)

الگرایتم ها همواره دارای تصمیماتی هستند که که باعث می شود کامپایلر بتواند وظیفه خود را به خوبی انجام دهد

دستور If  :

 راحت ترین راه برای تصمیم گیری در برنامه نویسی استفاده از دستور if  است

دستور if شرطی را تست می کند و در صورتی که درآن شرط آن دارای ارزش درستی  (true) باشد دستور(ات) را اجرا می کند.

 

روش اول

روش سوم

if (شرط)

دستور;

else

دستور;

if (شرط)

دستور;

else if (شرط)

دستور;

روش دوم

روش چهارم

if (شرط)

{

1دستور;

2دستور;

...

nدستور;

}

else

{

1دستور ;

2دستور ;

...

nدستور ;

}

 

if (شرط)

{

1دستور;

2دستور;

...

nدستور;

}

else if (شرط)

{

1دستور ;

2دستور ;

...

nدستور ;

}

 

 

در روشهای اول و دوم  چنانچه شرط مورد بررسی درست باشد دستورات بعد از If  در غیر این صورت دستورات بعد از else اجرا میشوند . و در روشهای سوم و چهارم چنانچه شرط مورد بررسی درست باشد دستورات بعد از if   اجرا می شود و سپس دوباره شرط else if   بررسی می شود اگر درست باشد دستورات آن اجرا می شود .

اگر بخواهیم در صورت غلط بودن شرط دستوری استفاده شود از else استفاده می کرد در غیر این صورت لزومی ندارد که از else  استفاده کرد.

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

 مثال :

int intNumber = 27;

if (intNumber == 1000) // false

printf("True intNumber is %d",intNumber);

else

 printf("False intNumber is %d",intNumber);

برنامه هنگام رسیدن به if  شرط بررسی می کند که آیا  intNumber  برابر 1000  است اگر درست باشد دستور بعد از if  را اجرا می کند همان طور که مشخص است به دلیل درست نبودن شرط دستورات if  اجرا نمی شود و دستورات بعد از else  اجرا می شود .

دستورات if  تودرتو :

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

مثال :

if (intX > 3)

{

Printf("intX is greater that 3");

if (intX == 6)

printf("intX is 6!");

}

عملگرهای and  و or منطقی :

در بعضی از شرط ها ممکن است بخواهیم به جای یک شرط چند شرط را در دستور if بررسی کرد برای مثال می خواهیم بدانیم که آیا intNumber  بزرگتر از 27 و کوچکتر از 10 است یا نه  در این صورت می توانیم شرط های درون دستور if را  می توان با استفاده از عملگر های and  و  or  منطقی ترکیب کرد

عملگر || در برنامه نویسی به عنوان "یا" منطقی استفاده می شود و معمولا در بررسی شرط ها برای ترکیب کردن دو شرط متفاوت به کار می رود . و عملگر && به عنوان " و " منطقی استفاده می شود

دستور switch  :

این ساختار برای تصمیم گیری های چند گانه استفاده می شود در تمام تصمیم گیری ها که بیش از سه انتخاب وجود دارد بهتر است از این ساختار استفاده شود

 

روش

switch (عبارت)

{

    case مقدار:

        دستورات;

        break;

    case مقدار:

        دستورات;

        break;

     .

     .

     .

    default:

    دستورات;

}

 

این عملگر ابتدا عبارت مقابل Switch  ارزیابی می شود و مقدار آن تعیین می گردد سپس با تک تک مقدار های که مقابل case است مورد بررسی قرار می گیرد اگر با مقداری برابر باشد دستورات زیر case را اجرا می کند در غیر این صورت با مقدار بعدی مورد بررسی قرار داده می شود و اگر به هیچ یک از مقادیر برابر نبود دستورات مربوط به default اجرا می شود .

ساختار switch می تواند فاقد بخش default باشد

مقادیر  موجود در case های switch نباید با هم مساوی باشند

دستور break مورد استفاده برای این است که کنترل برنامه را از ساختار switch  خارج کند اگر در یک case از دستور break استفاده نشود با مقدار case بعدی or می شود برای این که دو یا چند شرط را در ساختار switch با هم or کنیم  آنها را بدون دستور break پشت سر هم قرار می دهیم

تفاوت switch  و if  در این است  که در ساختار if می توان عبارت منطقی یا روابط رو مورد بررسی قرار داد و در ساختار switch فقط مساوی بودن مقادیر مورد بررسی قرار می گیرد

ساختار switch نیز می تواند به صورت تو در تو استفاده کرد یعنی هر یک از case ها نیز می تواند شامل ساختار switch باشد .

مثال :

 

 

#include "stdafx.h"

#include <stdio.h>

#include <conio.h>

int main()

{

       int x;

       printf("Please enter a number:");

       x=getche();

       switch (x) {

       case 1:

              printf("x is 1");

              break;

       case 2:

              printf("x is 2");

              break;

       case 3:

              printf("x is 3");

              break;

       case 4:

       case 5:

       case 6:

       case 7:

              printf("x is 4 or 5 or 6 or 7");

              break;

       default:

              printf("Unknown value");

       }

       return 0;

}

 

 

ارسال نظر برای این مطلب

کد امنیتی رفرش
اطلاعات کاربری
  • فراموشی رمز عبور؟
  • نویسندگان
    آمار سایت
  • کل مطالب : 33
  • کل نظرات : 18
  • افراد آنلاین : 1
  • تعداد اعضا : 446
  • آی پی امروز : 34
  • آی پی دیروز : 27
  • بازدید امروز : 36
  • باردید دیروز : 43
  • گوگل امروز : 0
  • گوگل دیروز : 3
  • بازدید هفته : 79
  • بازدید ماه : 609
  • بازدید سال : 3,918
  • بازدید کلی : 141,836