Swift sementara dan ulangi saat Loop (Dengan Contoh)

Pada artikel ini, Anda akan belajar membuat while dan mengulang… while loop dalam pemrograman Swift.

Pada artikel sebelumnya, kita telah mempelajari tentang for-in loop untuk menjalankan sekumpulan tugas dalam beberapa kali. Pada artikel ini, Anda akan belajar menggunakan whiledan repeat… whilesebagai alternatif for-in loop ketika jumlah iterasi tidak diketahui.

A while loop mengeksekusi sekumpulan pernyataan sampai kondisi menjadi false. Jenis loop ini paling baik digunakan ketika jumlah iterasi tidak diketahui sebelum iterasi pertama dimulai. Swift menyediakan dua jenis loop sementara:

1. Cepat sambil Loop

Loop ini mengevaluasi kondisinya pada awal setiap lintasan melalui loop.

Sintaks while loop adalah:

 while (TestExpression) ( // statements )

Bagaimana cara kerja loop?

Itu TestExpressionadalah ekspresi boolean.

Jika TestExpressiondievaluasi untuk true,

  • pernyataan di dalam while loop dijalankan.
  • dan TestExpressiondievaluasi lagi.

Proses ini berlangsung sampai TestExpressiondievaluasi false. Jika TestExpressionmengevaluasi ke false, sementara perulangan dihentikan.

Diagram alir saat Loop

Contoh 1: While Loop

 var currentLevel:Int = 0, finalLevel:Int = 5 let gameCompleted = true while (currentLevel <= finalLevel) ( //play game if gameCompleted ( print("You have passed level (currentLevel)") currentLevel += 1 ) ) print("outside of while loop")

Saat Anda menjalankan program, hasilnya adalah:

 Anda telah melewati level 0 Anda telah melewati level 1 Anda telah melewati level 2 Anda telah melewati level 3 Anda telah melewati level 4 Anda telah melewati level 5 di luar while loop 

Dalam program di atas, variabel currentLevel dan finalLevel diinisialisasi ke 0 dan konstan gameCompleted diinisialisasi true.

Di setiap iterasi while loop, ia memeriksa kondisinya currentLevel <= finalLevel. Jika kondisi kembali true, pernyataan di dalam while loop dijalankan jika tidak loop akan berakhir.

Langkah-langkah eksekusi
Pengulangan Kondisi (currentLevel <= finalLevel) Keluaran
1 0 <= 5 (benar) Anda telah melewati level 0
2 1 <= 5 (benar) Anda telah melewati level 1
3 2 <= 5 (benar) Anda telah melewati level 2
4 3 <= 5 (benar) Anda telah melewati level 3
5 4 <= 5 (benar) Anda telah melewati level 4
6 5 <= 5 (benar) Anda telah melewati level 5
7 6 <= 5 (salah) di luar loop sementara

2. Ulangi saat Loop

Perulangan ini mengevaluasi kondisinya di akhir setiap lintasan melalui perulangan. Pengulangan… while loop mirip dengan perulangan while dengan satu perbedaan utama. Body of repeat… while loop dijalankan satu kali sebelum ekspresi uji dicentang.

Sintaks pengulangan… while loop adalah:

 repeat ( // statements… ) while (testExpression)

Bagaimana mengulang… saat loop bekerja?

Body of repeat… while loop dijalankan sekali (sebelum memeriksa ekspresi tes). Setelah itu, testExpression dicentang.

Jika testExpression dievaluasi ke true, pernyataan di dalam badan perulangan dijalankan, dan testExpression dievaluasi lagi. Proses ini berlangsung sampai testExpression dievaluasi false.

Ketika testExpression adalah false, pengulangan… saat perulangan berakhir.

Diagram alir pengulangan… saat Loop

Contoh 2: Ulangi saat Loop

 var currentLevel:Int = 0, finalLevel:Int = 5 let gameCompleted = true repeat ( //play game if gameCompleted ( print("You have passed level (currentLevel)") currentLevel += 1 ) ) while (currentLevel <= finalLevel) print("outside of repeat while loop") 

Saat Anda menjalankan program, hasilnya adalah:

 Anda telah melewati level 0 Anda telah melewati level 1 Anda telah melewati level 2 Anda telah melewati level 3 Anda telah melewati level 4 Anda telah melewati level 5 di luar pengulangan while loop 

Dalam contoh di atas, untuk pertama kalinya pernyataan di dalam loop dijalankan. Dan untuk iterasi berikutnya, ia memeriksa kondisinya currentLevel <= finalLevel.

Jika kondisi kembali true, pernyataan di dalam while loop dijalankan jika tidak loop akan berakhir.

Langkah-langkah eksekusi
Pengulangan Kondisi (currentLevel <= finalLevel) Keluaran
1 0 <= 5 (benar) Anda telah melewati level 0
2 1 <= 5 (benar) Anda telah melewati level 1
3 2 <= 5 (benar) Anda telah melewati level 2
4 3 <= 5 (benar) Anda telah melewati level 3
5 4 <= 5 (benar) Anda telah melewati level 4
6 5 <= 5 (benar) Anda telah melewati level 5
7 6 <= 5 (salah) di luar ulangi while loop

Meskipun keduanya whiledan repeat whileloop memiliki langkah-langkah eksekusi yang sama, kondisi currentLevel <= finalLevel pada repeat whileloop hanya dijalankan setelah menjalankan pernyataan di dalamnya.

Namun dalam while, kondisi diperiksa di awal sebelum menjalankan pernyataan di dalamnya.

3. Tak terbatas sementara Loop

Jika ekspresi uji tidak pernah dievaluasi ke false, badan dari whiledan repeat… whileloop akan dieksekusi berkali-kali.

Contoh 3: Infinite while Loop

 while (true) ( print("Hello, World!") )
 repeat ( print("Hello, World!") ) while (true)

Saat Anda menjalankan program, hasilnya adalah:

Halo Dunia! Halo Dunia!…

Ketika Anda menjalankan program, kedua loop mengeksekusi print("Hello, World!")pernyataan untuk beberapa kali. Jadi, Anda dapat melihat keluaran berkelanjutan. Halo, Dunia! di konsol.

Artikel yang menarik...