• خانه
  • وبلاگ
  • نمونه کار ها
  • استارتاپ
  • درباره ما
  • تماس با ما
  • پنل کاربری
  • خانه
  • وبلاگ
  • نمونه کار ها
  • استارتاپ
  • درباره ما
  • تماس با ما
  • پنل کاربری
09023755684
ورود به پنل
  • خانه
  • وبلاگ
  • نمونه کار ها
  • استارتاپ
  • درباره ما
  • تماس با ما
  • پنل کاربری
  • خانه
  • وبلاگ
  • نمونه کار ها
  • استارتاپ
  • درباره ما
  • تماس با ما
  • پنل کاربری

دوره مقدماتی ++c رایگان

ویژگی های دوره
  • پروژه محوره
  • رایگان
بازگشت

دستورات کنترلی

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

در سی پلاس پلاس ما هفت نوع دستور کنترلی شامل if,if/else,switch,while,do/while,for داریم.

نگاهی گذرا بر تعاریف :

دستور انتخابی ifیک دستور تک انتخابی هست زیرا یک عمل رو انتخاب یا از اجرای ان صرف نظر میکنه اگر ارزش شرط درست باشه انتهاب و اگر نادرست باشه قبول نمیکنه.و از اجرای اون عمل صرف نظر میکنه.

دستور انتخابی if/elseدستور دو انتخابی چون بین دوتا عمل مختلف یک عمل و انتخاب میکنه در صورت درست بودن یک عمل رو انجام میده و در صورت نادرست بودن عمل دیگری رو انجام میده

دستور انتخاب switch دستور چند انتخابی هست چون از میان چند عمل مختلف یک عمل رو برمیگزیند و یکی از چند عمل مختلف رو با توجه به مقدار یک عبارت انجام میده.

دستور انتخابی if

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

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

ساختار دستور if

if(condition)

{

Commands and statements

}

نکته:  همانطور که میدونید از ویژگی های زبان سی پلاس پلاس Case sensitivity  یعنی خیلی به حروف بزرگ و کوچیک حساسه .اینجا هم برای ساختار دستور if باید به صورت lowercase letter باشه در غیر اینصورت موجب خطا میشه.

حالا با چندتا مثال این دستور رو بررسی میکنیم.

به طور مثال اگر نمره دانش اموزان بالاتر از دوازده بود دانش اموز قبول هست اگر درست باشه پیغام  قبولی رو در خروجی چاپ میکنه و اگر نادرست باشه یعنی نمره فرد کمتر از دوازده باشه از اجرای دستور چاپ صرف نظر میشه.

 

if (grade >= 12) {

 cout << “passed”;
 }

یا در مثالی دیگر با تعریف دو متغیر از نوع عدد صحیح و مقایسه ان دو باهم توسط دستور شرطی اگر x<y باشه در صفحه نمایش پیغام مربوطه نمایش داده میشه ولی اگر شرط نادرست باشه از اجرای دستور چاپ صرف نظر میشه.

int x = 9 ;
int y = 25;
if (x < y) {
  cout << “x is less than  y”;
}

 

دستور انتخاب if/else

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

if (condition) {

commands and statements( اجرا درصورت درست بودن شرط )

}

else {

commands and statements(اجرا درصورت عدم برقراری شرط)

}

 

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

درصورتیکه زمان کمتر از بیست باشه خروجی ما پیغام good day هست اگر زمان کمتر از بیست نباشه پیغام good evening رو در خروجی به نمایش میزاره.

int time =40;

if (time < 20) {

cout << “Good day.”;

}

else {

cout << “Good evening.”;

}

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

if (condition1) {

 بلوک کدی که  اگر شرط یک درست باشه

} 

else if (condition2) {

 بلوک کدی که اگر شرط یک درست و شرط دو نادرست باشه

} 

else {

 بلوک کدی که  اگر شرط یک نا درست و شرط دو نادرست باشه

}

 

به مثال زیز دقت کنید:خروجی برنامه پیغام گود ایونینگ هست حالا چرا ؟

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

int time = 40;

if (time < 20) {

cout << “Good morning.”;

}

else if (time < 15)

{

cout << “Good day.”;

}

else {

  cout << “Good evening.”;

}

 

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

if(condition)

{

Commands and statements

}

else if(condition)

{

Commands and statements

}

.

.

Commands and statements

} if(grade>=17)

cout<<”A”;

else

if(grade>=14)

cout<<”B”;

else

if(grade>=12)

cout<<”c”;

if(grade=<12)

cout<<”Failed”;

دستورswitch

دستور تک انتخابی if و دو انتخابی if /else رو آموختیم و مورد بررسی قرار دادیم حالا گاهی اوقات یک الگوریتم حاوی مجموعه ای از تصمیم گیری هاست که در ان یک یا متغیر و یا یک عبارت برای هر مقدارثابت صحیحی که اختیار میکنه به صورت جداگانه بررسی میشه که این عمل توسط دستورswitch  انجام میشه .به بیانی دیگر  هرموقعی که بخواهیم  چندین مقایسه رو انجام بدیم بطوریکه در همه شرط ها حالت های مختلف یک متغیر بررسی بشه میتوانیم از دستور switch  استفاده کنیم همچنین برای تصمیم گیری های چندگانه براساس مقادیر مختلف یک عبارت از این دستور استفاده میشه .

switch(expression) {
  case x:
    // code block
    break;
  case y:
    // code block
    break;
  default:
    // code block
}

 

نکات ساختار switch

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

دستور  .case  مقدار عبارت x,y  فراخوانی میشه و کامپایلر بلوک کدی رو اجرایی میکنه که با مقدار گزاره case مرتبط هستش

دستورات ناحیه default زمانیکه مقدار عبارت در هیچکدام از موارد ذکر شده درست نباشه اجرایی میشه البته استفاده از این دستور الزامی نیست.

مثال :

هدف استفاده از شماره روز هفته برای محاسبه نام روز

int day = 4;
switch (day) {
  case 1:
    cout << “Monday”;
    break;
  case 2:
    cout << “Tuesday”;
    break;
  case 3:
    cout << “Wednesday”;
    break;
  case 4:
    cout << “Thursday”;
    break;
  case 5:
    cout << “Friday”;
    break;
  case 6:
    cout << “Saturday”;
    break;
  case 7:
    cout << “Sunday”;
    break;
}

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

 

تمرین :

برنامه ای بنویسید که با استفاده از دستور case نمرات 5تا100 را به صورت حروفی در خروجی چاپ کند.

 

درباره ما

متخصصین جوان پاورایی با هدف سهولت در فرایند یادگیری ، مهارت افزایی شما عزیزان با بازار کار مربوطه در تمامی مراحل همراه ،پشتیبان و خدمت رسان شما عزیزان هستند.

دوره ها

  • دوره html
  • دوره ++C
  • دوره php

تماس با ما

  • info.powera1.ir@gmail.com
  • 090237555684
  • ساعات پاسخگویی:9 الی17
Instagram