מדריך C# – תנאי if

‏ • Sela

בחלק זה נלמד כיצד להשתמש בתנאי if.

משפט if בסיסי

לפעמים עולה צורך לבצע קטע קוד מסויים רק כאשר מתקיים איזשהו תנאי.
לדוגמא נרצה להדפיס למשתמש את המחרוזת "Hello" רק אם משתנה age מכיל ערך גדול או שווה ל18.
לצורך זה נוכל להשתמש במשפט if באופן הבא:

if (age >= 18)
{
   
Console.WriteLine("Hello");
}

באופן כללי משפט if יראה בצורה הבאה:

if (condition)
{
    פקודות כלשהן
}

כאשר condition מציין איזשהו ביטוי מטיפוס bool ואילו statements מציין אוסף פקודות שנרצה להריץ במקרה שהביטוי condition הוא true.

בתור condition ניתן לשים כל ביטוי שהתוצאה שלו היא bool, בדרך כלל נשתמש באופרטורים הבוליאניים שלמדנו עליהם בחלק קודם של המדריך.

להלן מספר דוגמאות בעלי תנאים מסוגים שונים:

  • קטע הקוד שבתנאי תמיד מתבצע:
if (true)
{
   
Console.WriteLine("runs always");
}

  • קטע הקוד שבתנאי אף פעם לא מתבצע:
if (false)
{
   
Console.WriteLine("never runs");
}

  • קטע הקוד שבתנאי מתבצע אם המשתמש הכניס את הערך "arik":
string name = Console.ReadLine();
if (name == "arik"
)
{
   
Console.WriteLine("runs if name is arik");
}

קטע הקוד שבתנאי מתבצע אם המשתמש הכניס את הערך "arik" וגם משתנה age מכיל ערך שגדול מ 18:

if ((name == "arik") && (age > 18))
{
Console.WriteLine("name is arik AND age is bigger than 18");
}

משפט if-else

באמצעות משפט if-else ניתן לבצע קוד מסוים כאשר התנאי ב if הוא true ולבצע קוד אחר כאשר התנאי הוא false.
המבנה הכללי של משפט if-else יראה בצורה הבאה:

if (condition)
{
   
// statements to run if condition is true
}
else
{
   
// statements to run if condition is false
}

להלן מספר דוגמאות המשתמשות במשפט if-else:

  • בדוגמא זו תודפס למסך הודעה בהתאם לשם המשתמש שהוכנס:
string name = Console.ReadLine();
if (name == "arik"
)
{
   
Console.WriteLine("runs if name is arik"
);
}

else
{
   
Console.WriteLine("runs if name is not arik");
}
  • בדוגמא זו תודפס למסך הודעה אם מתקיימים שני התנאים, לעומת זאת אם לפחות אחד התנאים אינו מתקיים תודפס הודעה אחרת:
string name = Console.ReadLine();
if ((name == "arik") && (age > 18))
{
    Console.WriteLine("name is arik AND age is > 18");
}

else
{
    Console.WriteLine("name is not arik OR age is not > 18");
}

תגיות: , , ,

arikp

אריק פוזננסקי הוא יועץ בכיר ומרצה בסלע. הוא השלים שני תארי B.Sc. במתמטיקה ומדעי המחשב בהצטיינות יתרה בטכניון. לאריק ידע נרחב בטכנולוגיות מיקרוסופט, כולל .NET עם C#, WPF, Silverlight, WinForms, Interop, COM/ATL, C++ Win32 ו reverse engineering.

תגובות בפייסבוק