Pada artikel ini, kita akan mempelajari tentang perulangan for di C # dan berbagai cara untuk menggunakannya dalam sebuah program.
Dalam pemrograman, seringkali diinginkan untuk mengeksekusi blok pernyataan tertentu untuk beberapa kali. Solusi yang mungkin adalah mengetikkan pernyataan tersebut untuk jumlah waktu yang diperlukan. Namun, jumlah pengulangan mungkin tidak diketahui sebelumnya (selama waktu kompilasi) atau mungkin cukup besar (katakanlah 10.000).
Solusi terbaik untuk masalah tersebut adalah loop. Loop digunakan dalam pemrograman untuk berulang kali mengeksekusi blok pernyataan tertentu sampai beberapa kondisi terpenuhi.
Pada artikel ini, kita akan melihat perulangan di C #.
C # untuk loop
Kata kunci for digunakan untuk membuat loop for di C #. Sintaks for loop adalah:
for (inisialisasi; kondisi; iterator) (// badan perulangan for)
Bagaimana cara kerja loop?
- C # untuk loop memiliki tiga pernyataan:
initialization
,condition
daniterator
. - The
initialization
pernyataan dieksekusi pada awalnya dan hanya sekali. Di sini, variabel biasanya dideklarasikan dan diinisialisasi. - Kemudian,
condition
dievaluasi. Inicondition
adalah ekspresi boolean, yaitu mengembalikantrue
ataufalse
. - Jika
condition
dievaluasi untuktrue
:- Pernyataan di dalam loop for dijalankan.
- Kemudian,
iterator
pernyataan dijalankan yang biasanya mengubah nilai variabel yang diinisialisasi. - Sekali lagi
condition
dievaluasi. - Proses berlanjut sampai
condition
dievaluasifalse
.
- Jika
condition
dievaluasi kefalse
, perulangan for berakhir.
untuk Loop Flowchart
Contoh 1: C # untuk Loop
using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( for (int i=1; i<=5; i++) ( Console.WriteLine("C# For Loop: Iteration (0)", i); ) ) ) )
Saat kita menjalankan program, outputnya adalah:
C # Untuk Loop: Iterasi 1 C # Untuk Loop: Iterasi 2 C # Untuk Loop: Iterasi 3 C # Untuk Loop: Iterasi 4 C # Untuk Loop: Iterasi 5
Dalam program ini,
initialization
pernyataan adalahint i=1
condition
pernyataan adalahi<=5
iterator
pernyataan adalahi++
Saat program berjalan,
- Pertama, variabel i dideklarasikan dan diinisialisasi ke 1.
- Kemudian, kondisi (
i<=5
) dievaluasi. - Karena, kondisi kembali
true
, program kemudian mengeksekusi badan perulangan for. Ini mencetak baris yang diberikan dengan Iterasi 1 (Iterasi berarti pengulangan). - Sekarang, iterator (
i++
) dievaluasi. Ini menambah nilai i menjadi 2. - Kondisi (
i<=5
) dievaluasi lagi dan pada akhirnya nilai i bertambah 1. Kondisi akan dievaluasitrue
untuk 5 kali pertama. - Ketika nilai i akan menjadi 6 dan kondisinya akan menjadi
false
, maka loop akan berhenti.
Contoh 2: perulangan for menghitung jumlah n bilangan asli pertama
using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( int n = 5,sum = 0; for (int i=1; i<=n; i++) ( // sum = sum + i; sum += i; ) Console.WriteLine("Sum of first (0) natural numbers = (1)", n, sum); ) ) )
Saat kita menjalankan program, outputnya adalah:
Jumlah 5 bilangan asli pertama = 15
Di sini, nilai penjumlahan dan n diinisialisasi ke 0 dan 5 masing-masing. Variabel iterasi i diinisialisasi ke 1 dan bertambah pada setiap iterasi.
Di dalam perulangan for, nilai jumlah bertambah dengan i yaitu sum = sum + i
. Perulangan for berlanjut sampai i kurang dari atau sama dengan n (masukan pengguna).
Mari kita lihat apa yang terjadi dalam program yang diberikan pada setiap iterasi.
Awalnya i = 1, sum = 0 dan n = 3
Untuk langkah-langkah eksekusi loopPengulangan | Nilai i | saya <= 5 | Nilai jumlah |
---|---|---|---|
1 | 1 | benar | 0 + 1 = 1 |
2 | 2 | benar | 1 + 2 = 3 |
3 | 3 | benar | 3 + 3 = 6 |
4 | 4 | benar | 6 + 4 = 10 |
5 | 5 | benar | 10 + 5 = 15 |
6 | 6 | Salah | Loop berakhir |
Jadi, nilai akhir penjumlahannya adalah 15 jika n = 5.
Beberapa ekspresi di dalam perulangan for
Kita juga bisa menggunakan banyak ekspresi di dalam for loop. Ini berarti kita dapat memiliki lebih dari satu inisialisasi dan / atau pernyataan iterator dalam perulangan for. Mari kita lihat contoh di bawah ini.
Contoh 3: for loop dengan beberapa inisialisasi dan ekspresi iterator
using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( for (int i=0, j=0; i+j<=5; i++, j++) ( Console.WriteLine("i = (0) and j = (1)", i,j); ) ) ) )
Saat kita menjalankan program, outputnya adalah:
i = 0 dan j = 0 i = 1 dan j = 1 i = 2 dan j = 2
Dalam program ini, kami telah mendeklarasikan dan menginisialisasi dua variabel: i dan j dalam pernyataan inisialisasi.
Juga, kami memiliki dua ekspresi di bagian iterator. Itu berarti i dan j bertambah 1 pada setiap iterasi.
Untuk perulangan tanpa inisialisasi dan pernyataan iterator
Inisialisasi, kondisi, dan pernyataan iterator adalah opsional dalam perulangan for. Ini berarti kita dapat menjalankan perulangan for tanpa pernyataan ini juga.
Dalam kasus seperti ini, for loop bertindak sebagai while loop. Mari kita lihat contoh di bawah ini.
Contoh 4: for loop tanpa inisialisasi dan pernyataan iterator
using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( int i = 1; for ( ; i<=5; ) ( Console.WriteLine("C# For Loop: Iteration (0)", i); i++; ) ) ) )
Saat kita menjalankan program, outputnya adalah:
C # Untuk Loop: Iterasi 1 C # Untuk Loop: Iterasi 2 C # Untuk Loop: Iterasi 3 C # Untuk Loop: Iterasi 4 C # Untuk Loop: Iterasi 5
Dalam contoh ini, kami belum menggunakan pernyataan inisialisasi dan iterator.
Variabel i diinisialisasi di atas loop for dan nilainya bertambah di dalam body loop. Program ini sama dengan yang ada di Contoh 1.
Demikian pula, kondisi juga merupakan pernyataan opsional. Namun jika kita tidak menggunakan ekspresi uji, perulangan for tidak akan menguji kondisi apa pun dan akan berjalan selamanya (perulangan tak terbatas).
Tak terbatas untuk loop
Jika kondisi dalam perulangan for selalu benar, perulangan for akan berjalan selamanya. Ini disebut loop tak terbatas.
Contoh 5: Perulangan tak terbatas
using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( for (int i=1 ; i>0; i++) ( Console.WriteLine("C# For Loop: Iteration (0)", i); ) ) ) )
Di sini, saya diinisialisasi ke 1 dan kondisinya adalah i>0
. Pada setiap iterasi kami menambah nilai i sebesar 1, sehingga kondisinya tidak akan pernah false
. Ini akan menyebabkan loop dieksekusi tanpa batas.
Kami juga dapat membuat loop tak terbatas dengan mengganti kondisi dengan kosong. Sebagai contoh,
for (;;) (// body of for loop)
atau
for (inisialisasi;; iterator) (// body of for loop)