Pelajari logika condition dengan statement branch dan loop
Panduan ini akan memberi tahu Anda cara menulis kode yang memeriksa variabel dan mengubah jalur eksekusi berdasarkan variabel tersebut. Anda akan menggunakan browser untuk menulis C# secara interaktif kemudian melihat hasil kompilasi dan eksekusi kode Anda. Panduan ini berisi rangkaian materi yang mempelajari konstruksi branch dan loop dalam C#. Materi ini memberikan Anda pengetahuan dasar tentang bahasa C#.
Tip
Untuk menempelkan cuplikan kode di dalam mode fokus, Anda harus menggunakan pintasan keyboard (Ctrl + v, atau cmd + v).
Membuat keputusan menggunakan pernyataan if
Eksekusi kode berikut dalam jendela interaktif. Pilih tombol Masuk ke mode fokus. Kemudian, ketik blok kode berikut di jendela interaktif dan pilih Jalankan:
int a = 5;
int b = 6;
if (a + b > 10)
Console.WriteLine("The answer is greater than 10.");
Jika menjalankan ini di lingkungan, Anda harus mengikuti instruksi untuk versi lokal sebagai gantinya.
Ubah deklarasi b
sehingga jumlahnya kurang dari 10:
int b = 3;
Pilih tombol Run lagi. Karena jawaban kurang dari 10, tidak ada yang dicetak. Kondisi yang Anda uji bernilai false. Anda tidak memiliki kode apa pun untuk dieksekusi karena Anda hanya menulis salah satu dari beberapa cabang yang mungkin untuk pernyataan if
: cabang bernilai true.
Tip
Saat mempelajari C# (atau bahasa pemrogram apa pun), Anda sangat mungkin membuat kesalahan saat menuliskan kode. Kompilator akan mencari kesalahan dan melaporkannya kepada Anda. Jika output berisi pesan kesalahan, perhatikan kode contoh dan kode dalam jendela interaktif dengan cermat untuk mengetahui hal yang harus diperbaiki. Latihan ini akan membantu Anda mempelajari struktur kode C#.
Sampel pertama menampilkan potensi dari if
dan jenis boolean. Boolean adalah variabel yang dapat memiliki satu atau dua nilai: true
atau false
. C# mendefinisikan jenis khusus, bool
untuk variabel boolean. Pernyataan if
memeriksa nilai dari bool
. Jika nilainya adalah true
, pernyataan yang mengikuti if
akan dieksekusi. Jika tidak, itu akan dilewati.
Proses pemeriksaan syarat dan eksekusi pernyataan yang didasarkan pada syarat tersebut sangatlah kuat. Mari pelajari hal lainnya.
Membuat pernyataan if dan else agar berfungsi bersama
Untuk mengeksekusi kode yang berbeda dalam cabang true dan false, buat cabang else
yang mengeksekusi saat kondisi bernilai false. Coba kode berikut:
int a = 5;
int b = 3;
if (a + b > 10)
Console.WriteLine("The answer is greater than 10");
else
Console.WriteLine("The answer is not greater than 10");
Pernyataan yang mengikuti kata kunci else
hanya melakukan eksekusi pada saat kondisi yang sedang diuji bernilai false
. Kombinasi if
dan else
dengan kondisi boolean akan memberikan potensi sesuai dengan yang Anda butuhkan.
Penting
Indentasi di bawah pernyataan if
dan else
adalah untuk memudahkan pembaca manusia.
Bahasa C# tidak memperlakukan indentasi atau spasi kosong sebagai sesuatu yang signifikan.
Pernyataan yang mengikuti kata kunci if
dan else
akan dieksekusi berdasarkan kondisi tersebut. Semua sampel dalam tutorial ini mengikuti praktik umum untuk baris inden berdasarkan alur kontrol pernyataan.
Karena indentasi tidak signifikan, Anda harus menggunakan {
dan }
untuk mengindikasikan kapan Anda memerlukan lebih dari satu pernyataan untuk menjadi bagian blok yang mengeksekusi secara bersyarat. Programmer C# biasanya menggunakan tanda kurung tersebut pada semua klausa if
dan else
. Contoh berikut sama dengan yang baru saja Anda buat. Cobalah.
int a = 5;
int b = 3;
if (a + b > 10)
{
Console.WriteLine("The answer is greater than 10");
}
else
{
Console.WriteLine("The answer is not greater than 10");
}
Tip
Semua sampel kode dalam panduan ini menyertakan tanda kurung, mengikuti praktik yang diterima.
Anda dapat menguji kondisi yang lebih rumit:
int a = 5;
int b = 3;
int c = 4;
if ((a + b + c > 10) && (a == b))
{
Console.WriteLine("The answer is greater than 10");
Console.WriteLine("And the first number is equal to the second");
}
else
{
Console.WriteLine("The answer is not greater than 10");
Console.WriteLine("Or the first number is not equal to the second");
}
Simbol ==
menguji untuk kesetaraan. Menggunakan ==
membedakan pengujian untuk kesetaraan dari penugasan, yang Anda lihat di a = 5
.
&&
mewakili “and”. Ini berarti kedua kondisi harus bernilai true agar dapat mengeksekusi pernyataan dalam cabang bernilai true. Contoh ini juga menunjukkan bahwa Anda dapat memiliki lebih dari satu pernyataan dalam setiap cabang bersyarat, asalkan Anda melampirkannya dalam {
dan }
.
Anda juga dapat menggunakan ||
untuk mewakili “or”:
int a = 5;
int b = 3;
int c = 4;
if ((a + b + c > 10) || (a == b))
{
Console.WriteLine("The answer is greater than 10");
Console.WriteLine("Or the first number is equal to the second");
}
else
{
Console.WriteLine("The answer is not greater than 10");
Console.WriteLine("And the first number is not equal to the second");
}
Ubah nilai a
, b
dan c
kemudian beralih antara &&
dan ||
untuk menjelajahi. Anda akan mendapatkan lebih banyak pemahaman tentang cara &&
dan kerja operator ||
.
Menggunakan loop untuk mengulangi operasi
Konsep penting lainnya untuk membuat program yang lebih besar adalah loop. Anda akan menggunakan loop untuk mengulangi pernyataan yang ingin dieksekusi lebih dari satu kali. Coba kode ini dalam jendela interaktif:
int counter = 0;
while (counter < 10)
{
Console.WriteLine($"Hello World! The counter is {counter}");
counter++;
}
Pernyataan while
memeriksa kondisi dan mengeksekusi pernyataan yang mengikuti while
. Hal ini akan mengulangi pemeriksaan kondisi dan mengeksekusi pernyataan tersebut hingga kondisi bernilai false.
Contoh ini berisi satu operator baru lainnya. ++
setelah variabel counter
adalah operator tahapan. Kode ini menambahkan 1 ke nilai penghitung, dan menyimpan nilai tersebut dalam variabel penghitung.
Penting
Pastikan kondisi loop while
tidak berubah ke false saat Anda mengeksekusi kode. Jika tidak, Anda akan membuat loop tidak terbatas dan program tidak akan pernah berakhir. Tetapi jangan mencobanya, karena mesin yang menjalankan kode Anda akan kehabisan waktu dan program Anda tidak akan menghasilkan output apa pun.
Loop while
menguji kondisi sebelum mengeksekusi kode yang mengikuti while
. Loop do
... while
mengeksekusi kode terlebih dahulu, kemudian memeriksa kondisinya. Terlihat seperti di bawah ini:
int counter = 0;
do
{
Console.WriteLine($"Hello World! The counter is {counter}");
counter++;
} while (counter < 10);
Loop do
ini dan loop while
sebelumnya memiliki fungsi yang sama.
Mari beralih ke satu pernyataan loop terakhir.
Menggunakan loop for
Pernyataan loop umum lainnya yang akan Anda lihat dalam kode C# adalah loop for
. Coba kode ini dalam jendela interaktif:
for (int counter = 0; counter < 10; counter++)
{
Console.WriteLine($"Hello World! The counter is {counter}");
}
Kode ini memiliki fungsi yang sama dengan loop while
dan loop do
yang telah Anda gunakan. Pernyataan for
memiliki tiga bagian yang mengontrol cara kerjanya.
Bagian pertama adalah untuk initializer: int counter = 0;
menyatakan bahwa counter
adalah variabel perulangan, dan menetapkan nilai awalnya ke 0
.
Bagian tengahnya adalah untuk syarat: counter < 10
mendeklarasikan bahwa perulangan for
ini terus mengeksekusi selama nilai penghitung kurang dari 10.
Bagian terakhir adalah untuk iterator : counter++
menentukan cara memodifikasi variabel perulangan setelah mengeksekusi blok mengikuti pernyataan for
. Kode ini menentukan bahwa counter
harus dinaikkan sebesar 1 setiap kali blok mengeksekusi.
Lakukan uji coba sendiri. Coba setiap cara berikut:
- Ubah penginisialisasi untuk memulai pada nilai yang berbeda.
- Ubah kondisi untuk berhenti pada nilai yang berbeda.
Ketika selesai, silakan mencoba menulis beberapa kode untuk mempraktikkan semua hal yang telah Anda pelajari.
Ada satu pernyataan perulangan lain yang tidak tercakup dalam tutorial ini: pernyataan foreach
. Statement pengulangan foreach
mengulangi statement untuk setiap item dalam urutan item. Metode ini paling sering digunakan dengan collection, sehingga tercakup dalam tutorial berikutnya.
Membuat perulangan bersarang
Perulangan while
, do
, atau for
dapat ditumpuk di dalam perulangan lain untuk membuat matriks menggunakan kombinasi setiap item di perulangan luar dengan setiap item dalam perulangan dalam. Mari kita lakukan untuk membangun sekumpulan pasangan alfanumerik untuk mewakili baris dan kolom.
Satu perulangan for
dapat menghasilkan baris:
for (int row = 1; row < 11; row++)
{
Console.WriteLine($"The row is {row}");
}
Perulangan lain dapat menghasilkan kolom:
for (char column = 'a'; column < 'k'; column++)
{
Console.WriteLine($"The column is {column}");
}
Anda dapat menumpuk satu perulangan di dalam yang lain untuk membentuk pasangan:
for (int row = 1; row < 11; row++)
{
for (char column = 'a'; column < 'k'; column++)
{
Console.WriteLine($"The cell is ({row}, {column})");
}
}
Anda dapat melihat bahwa kenaikan perulangan luar sekali untuk setiap eksekusi penuh perulangan dalam. Balikkan baris dan kolom bersarang, dan lihat perubahan yang dilakukan diri Anda sendiri.
Menggabungkan cabang dan loop
Anda telah melihat pernyataan if
dan konstruksi loop dalam bahasa C#, kemudian coba apakah Anda dapat menulis kode C# untuk menemukan jumlah semua integer dari 1 sampai 20 yang habis dibagi 3. Berikut beberapa petunjuknya:
- Operator
%
memberi Anda sisa operasi pembagian. - Pernyataan
if
memberi Anda kondisi untuk melihat apakah suatu bilangan harus menjadi bagian dari jumlah. - Loop
for
dapat membantu Anda mengulangi serangkaian langkah untuk semua angka dari 1 sampai 20.
Cobalah sendiri, kemudian periksa hasilnya. Sebagai petunjuk, Anda harus mendapatkan jawaban 63.
Selesaikan tantangan
Apakah Anda paham dengan sesuatu semacam ini?
int sum = 0;
for (int number = 1; number < 21; number++)
{
if (number % 3 == 0)
{
sum = sum + number;
}
}
Console.WriteLine($"The sum is {sum}");
Selamat!
Anda telah menyelesaikan panduan "branch dan loop". Anda dapat memilih tautan daftar collection di bawah untuk memulai tutorial interaktif berikutnya, atau Anda dapat mengunjungi situs .NET untuk mengunduh SDK .NET, membuat proyek di mesin Anda, dan terus menulis kode. Bagian "Langkah berikutnya" membawa Anda kembali ke tutorial ini.
Anda dapat mempelajari selengkapnya tentang konsep-konsep tersebut di artikel ini:
Memiliki masalah dengan bagian ini? Jika iya, berikan umpan balik kepada kami agar kami dapat meningkatkan bagian ini.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk