سبد خرید 0

هیچ محصولی در سبد خرید نیست.

سبد خرید 0

هیچ محصولی در سبد خرید نیست.

آموزش دستور شرطی if در C ، C++ و آردوینو

آموزش دستور شرطی if در C ، C++ و آردوینو کافه میکرو

آموزش دستور شرطی if در C ، C++ و آردوینو

سلام خدمت همه همراهان همیشگی و علاقه مندان به سایت کافه میکرو امروز در خدمت شما هستیم با یک آموزش بسیار مفید دیگر، ما در این آموزش  کار با دستور شرطی if رو ( که شامل if … else و همینطور if … else تو در تو هم می شه ) در زبان C به کمک یک مثال یاد خواهید گرفت.

از آنجا که در آردوینو ( Arduino ) نیز از زبان های C و C++ استفاده می شود، مطالبی که در ادامه بیان می شود عمومی هستند و برای میکروکنترلرها همینطور زمینه ی Embedded C کاربرد دارد.

دستور شرطی if در زبان برنامه نویسی C

if (test expression) 
{
   // statements to be executed if the test expression is true
}

دستور if چطوری کار می کنه؟

دستور شرطی if در مثال پایین، مقدار متغییر test رو که در درون پرانتز قرار گرفته رو ارزیابی می کنه.

اگر شرط صحیح باشه دستورات درون بدنه ی if اجرا می شوند و در غیر اینصورت دستورات درون بدنه ی if نادیده گرفته شده و اجرا نمی شوند.

آموزش دستور شرطی if در C ، C++ و آردوینو - کافه میکرو
آموزش دستور شرطی if در C ، C++ و آردوینو – کافه میکرو

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

مثال 1 : دستور if

// Program to display a number if it is negative
#include <stdio.h>
int main() 
{
    int number;
    printf("Enter an integer: ");
    scanf("%d", &number);
    // true if number is less than 0
    if (number < 0) 
    {
        printf("You entered %d.\n", number);
    }
    printf("The if statement is easy.");
    return 0;
}

نتیجه 1

Enter an integer: -5
You entered -5.
The if statement is easy.

زمانی که کاربر مقدار -5 را وارد می کند، مقدار شرط number < 0 ارزیابی شده و نتیجه صحیح است. بنابراین عبارت You entered -5 بر روی صفحه نمایش چاپ می شود

نتیجه 2

Enter an integer: 7
The if statement is easy.

زمانی که کاربر مقدار 7 را وارد می کند، مقدار شرط number < 0 ارزیابی شده و نتیجه نادرست است. بنابراین دستورات درون بدنه ی if اجرا نمی شوند، در نتیجه دستورات مربوط به آن بخش بر روی صفحه نمایش چاپ نمی شوند.

دستور if … else در زبان C

دستور if ممکن است یک بلوک else اختیاری هم داشته باشد. فرم سینتکس آن را در ادامه مشاهده می کنید.

if (test expression) 
{
    // statements to be executed if the test expression is true
}
else 
{
    // statements to be executed if the test expression is false
}

دستور if … else چگونه کار می کند؟

اگر مقدار شرط بعد از ارزیابی ، صحیح تشخیص داده شود، دستورات درون بدنه ی if اجرا شده و دستورات موجود در بدنه ی else نادیده گرفته می شوند.

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

از اینکه همراه کافه میکرو بودید و تا پایان آموزش حلقه for در C و C++ و آردوینو همراه ما بودید به شما تبریک میگیم. از بخش های دیگر کافه میکرو در فروشگاه و وبلاگ هم می توانید دیدن فرمایید. منتظر مقالات و آموزش های دیگر کافه میکرو باشید.

مثال 2: دستور if … else

// Check whether an integer is odd or even
#include <stdio.h>
int main()
{
    int number;
    printf("Enter an integer: ");
    scanf("%d", &number);
    // True if the remainder is 0
    if  (number%2 == 0) 
    {
        printf("%d is an even integer.",number);
    }
    else 
    {
        printf("%d is an odd integer.",number);
    }
    return 0;
}

نتیجه

Enter an integer: 9
9 is an odd integer.

زمانی که کاربر مقدا 9 را وارد می کند، عبارت number%2 == 0 ارزیابی شده و نتیجه نادرست تشخیص داده خواهد شد. بنابراین دستورات درون بدنه ی else اجرا می شوند.

نردبان if … else در C

ترکیب دستور if … else بعد از بررسی شرط، تنها 2 کد را اجرا می کند، بسته به اینکه شرط برقرار باشد و یا برقرار نباشد. اما گاهی اوقات شرایط بیش تر از 2 حالت را به وجود می آورد.

نردبان if … else این امکان را به شما می دهد که بتوانید شرایط متفاوتی را ارزیابی کرده و دستورات متفاوتی را اجرا کنید.

سینتکس استفاده نردبانی از دستور if

if (test expression1) 
{
   // statement(s)
}
else if(test expression2) 
{
   // statement(s)
}
else if (test expression3) 
{
   // statement(s)
}
.
.
else 
{
   // statement(s)
}

مثال 3: کاربرد if … else به صورت نردبانی

// Program to relate two integers using =, > or < symbol
#include <stdio.h>
int main() 
{
    int number1, number2;
    printf("Enter two integers: ");
    scanf("%d %d", &number1, &number2);
    //checks if the two integers are equal.
    if(number1 == number2) 
    {
        printf("Result: %d = %d",number1,number2);
    }
    //checks if number1 is greater than number2.
    else if (number1 > number2) 
    {
        printf("Result: %d > %d", number1, number2);
    }
    //checks if both test expressions are false
    else 
    {
        printf("Result: %d < %d",number1, number2);
    }
    return 0;
}

نتیجه

Enter two integers: 12
23
Result: 12 < 23

استفاده از دستور If … else به صورت تو در تو

همانطور که در مثال ذیل مشاهده می کنید، در یک بدنه ی if … else می توان if … else های دیگری نیز داشت.

#include <stdio.h>
int main() 
{
    int number1, number2;
    printf("Enter two integers: ");
    scanf("%d %d", &number1, &number2);
    if (number1 >= number2) 
    {
      if (number1 == number2) 
      {
        printf("Result: %d = %d",number1,number2);
      }
      else 
      {
        printf("Result: %d > %d", number1, number2);
      }
    }
    else 
    {
        printf("Result: %d < %d",number1, number2);
    }
    return 0;
}

اگر بدنه ی دستور if … else تنها دارای یک دستور است، نیازی به استفاده از {} نیست. اگر چه اکیدا توصیه می شود جهت افزایش خوانایی کد همواره از {} استفاده شود، حتی در این مورد خاص.

برای مثال تکه کد ذیل

if (a > b) 
{
    print("Hello");
}
print("Hi");

معادل است با

if (a > b)
    print("Hello");
print("Hi");

از اینکه همراه کافه میکرو بودید و تا پایان آموزش دستور شرطی if در C ، C++ و آردوینو همراه ما بودید به شما تبریک میگیم.

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

منتظر مقالات و آموزش های دیگر کافه میکرو باشید.

دیدگاه شما
محصول با موفقیت به سبد خرید اضافه شد.