Menguasai Logika Kondisional C#: If, If-Else, If-ElseIf, dan Pernyataan Nested If
Menguasai Logika Kondisional C#: If, If‑Else, If‑ElseIf, dan Nested If Statements
Dalam artikel ini, kita akan mempelajari cara menggunakan if, if...else, if...else if statements di C# untuk mengontrol alur eksekusi program.
Menguji kondisi adalah bagian inti dari setiap bahasa pemrograman. Di C#, pernyataan kondisional memungkinkan Anda mengevaluasi ekspresi Boolean dan memutuskan blok kode mana yang harus dijalankan. Kondisi ini sering dikonversi oleh input pengguna, status sistem, waktu, atau faktor runtime lainnya.
C# if (If‑Then) Statement
Bentuk sederhana dari logika kondisional di C# adalah pernyataan if, yang mengeksekusi blok kode saat ekspresi Boolean-nya mengevaluasi ke true. Sintaksnya sederhana:
if (booleanExpression) { // code executed when booleanExpression is true }
booleanExpression harus mengembalikan true atau false.
Jika mengembalikan true, pernyataan di dalam kurung kurawal dijalankan.
Jika mengembalikan false, pernyataan tersebut dilewati.
Contoh:
if (number < 5) { number += 5; }
Di sini, number += 5; hanya berjalan saat number kurang dari 5.
Bagaimana pernyataan if bekerja
Contoh 1: Pernyataan if Dasar
using System; namespace Conditional { class IfStatement { public static void Main(string[] args) { int number = 2; if (number < 5) { Console.WriteLine($"{number} is less than 5"); } Console.WriteLine("This statement is always executed."); } } }
Output:
2 is less than 5 This statement is always executed.
Mengubah number menjadi 10 menghasilkan:
This statement is always executed.
Karena number < 5 mengevaluasi ke false, blok if dilewati.
C# if...else (If‑Then‑Else) Statement
Saat Anda perlu menangani kedua hasil dari tes Boolean, tambahkan blok else:
if (booleanExpression) { // executed when true } else { // executed when false }
Contoh:
if (number < 5) { number += 5; } else { number -= 5; }
Cabang pertama berjalan jika number kurang dari 5; sebaliknya, cabang kedua berjalan.
Bagaimana pernyataan if...else bekerja
Contoh 2: Menggunakan if...else
using System; namespace Conditional { class IfElseStatement { public static void Main(string[] args) { int number = 12; if (number < 5) { Console.WriteLine($"{number} is less than 5"); } else { Console.WriteLine($"{number} is greater than or equal to 5"); } Console.WriteLine("This statement is always executed."); } } }
Output saat number adalah 12:
12 is greater than or equal to 5 This statement is always executed.
Dengan number diatur ke 2, outputnya menjadi:
2 is less than 5 This statement is always executed.
Sebagai alternatif yang ringkas, operator ternary dapat menggantikan konstruksi if...else sederhana.
C# if...else if (If‑Then‑Else If) Statement
Saat beberapa kondisi perlu dievaluasi, rantai klausa else if setelah if awal:
if (condition1) { // code for condition1 } else if (condition2) { // code for condition2 } else if (condition3) { // code for condition3 } else { // code if all conditions are false }
Rantai dievaluasi dari atas ke bawah; eksekusi berhenti pada kondisi true pertama. Jika tidak ada yang cocok, blok else berjalan.
Sebagai alternatif, pernyataan switch dapat menangani nilai diskrit dengan lebih rapi.
Contoh 3: Menggunakan if...else if
using System; namespace Conditional { class IfElseIfStatement { public static void Main(string[] args) { int number = 12; if (number < 5) { Console.WriteLine($"{number} is less than 5"); } else if (number > 5) { Console.WriteLine($"{number} is greater than 5"); } else { Console.WriteLine($"{number} is equal to 5"); } } } }
Output untuk number = 12:
12 is greater than 5
Mengubah number menjadi 4 atau 5 akan menyesuaikan outputnya.
Pernyataan Nested if...else
Pernyataan nested if...else menempatkan satu blok kondisional di dalam blok lain, memungkinkan logika pengambilan keputusan multi-tingkat. Pola umumnya adalah:
if (outerCondition) { if (innerCondition1) { // code when both outer and inner are true } else { // code when outer is true but inner is false } } else { if (innerCondition2) { // code when outer is false but inner2 is true } else { // code when both outer and inner2 are false } }
Kondisi bersarang berguna untuk pemeriksaan bertahap, seperti memvalidasi serangkaian input pengguna atau menghitung maksimum dari beberapa nilai.
Contoh 4: Mencari Angka Terbesar dari Tiga Angka
using System; namespace Conditional { class Nested { public static void Main(string[] args) { int first = 7, second = -23, third = 13; if (first > second) { if (first > third) { Console.WriteLine($"{first} is the largest"); } else { Console.WriteLine($"{third} is the largest"); } } else { if (second > third) { Console.WriteLine($"{second} is the largest"); } else { Console.WriteLine($"{third} is the largest"); } } } } }
Menjalankan program menghasilkan:
13 is the largest
Sesuaikan nilai input untuk melihat bagaimana logika beradaptasi.