Döngü sırasında hızlı ve tekrarlayın (Örneklerle)

Bu makalede, Swift programlamasında while oluşturmayı ve… while döngülerinde tekrar etmeyi öğreneceksiniz.

Önceki makalede, bir dizi görevi belirli sayıda çalıştırmak için giriş döngüsünü öğrendik. Bu makalede, kullanım öğreneceksiniz whileve repeat… whileyineleme sayısının bilinmediği zaman için-de döngünün bir alternatif olarak.

While döngüsü, bir koşul oluşana kadar bir dizi deyimi yürütür false. Bu tür döngüler, ilk yineleme başlamadan önce yinelemelerin sayısı bilinmediğinde en iyi şekilde kullanılır. Swift iki tür while döngüsü sağlar:

1. Döngü sırasında hızlı

Bu döngü, döngü boyunca her geçişin başlangıcındaki durumunu değerlendirir.

While döngüsünün sözdizimi şöyledir:

 while (TestExpression) ( // statements )

Döngü nasıl çalışır?

TestExpressionBir Boole ifadesidir.

Olarak TestExpressiondeğerlendirilirse true,

  • while döngüsü içindeki ifadeler çalıştırılır.
  • ve TestExpressionyeniden değerlendirilir.

Bu süreç TestExpressiondeğerlendirilene kadar devam eder false. Olarak TestExpressiondeğerlendirilirse false, while döngüsü sonlandırılır.

While Döngüsü akış çizelgesi

Örnek 1: Döngü Halindeyken

 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")

Programı çalıştırdığınızda, çıktı:

 Seviye 0'ı geçtiniz Seviye 1'i geçtiniz Seviye 2'yi geçtiniz Seviye 3'ü geçtiniz Seviye 5'i while döngüsü dışında geçtiniz 

Yukarıdaki programda, currentLevel ve finalLevel değişkeni 0 olarak ve sabit gameCompleted olarak başlatılır true.

While döngüsünün her yinelemesinde koşulu kontrol eder currentLevel <= finalLevel. Koşul dönerse true, while döngüsü içindeki ifadeler yürütülür, aksi takdirde döngü sona erer.

Yürütme adımları
Yineleme Koşul (currentLevel <= finalLevel) Çıktı
1 0 <= 5 (doğru) Seviye 0'ı geçtiniz
2 1 <= 5 (doğru) 1. seviyeyi geçtiniz
3 2 <= 5 (doğru) 2. seviyeyi geçtiniz
4 3 <= 5 (doğru) 3. seviyeyi geçtiniz
5 4 <= 5 (doğru) 4. seviyeyi geçtiniz
6 5 <= 5 (doğru) 5. seviyeyi geçtiniz
7 6 <= 5 (yanlış) while döngüsünün dışında

2. Döngü sırasında tekrarlayın

Bu döngü, döngü boyunca her geçişin sonundaki durumunu değerlendirir. Tekrar… while döngüsü, bir anahtar farkı olan while döngüsüne benzer. Yinele gövdesi… while döngüsü, test ifadesi kontrol edilmeden önce bir kez yürütülür.

Yineleme sözdizimi… while döngüsü:

 repeat ( // statements… ) while (testExpression)

Döngü çalışırken… nasıl tekrarlanır?

Yinele gövdesi… while döngüsü bir kez yürütülür (test ifadesini kontrol etmeden önce). Ancak o zaman testExpression kontrol edilir.

TestExpression doğru olarak değerlendirilirse, döngünün gövdesi içindeki ifadeler yürütülür ve testExpression yeniden değerlendirilir. Bu süreç, testExpression ile değerlendirilene kadar devam eder false.

TestExpression olduğunda false, tekrar… while döngüsü sona erer.

Tekrarın akış çizelgesi… Döngü sırasında

Örnek 2: Döngü sırasında tekrarlayın

 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") 

Programı çalıştırdığınızda, çıktı:

 Seviye 0'ı geçtiniz Seviye 1'i geçtiniz Seviye 2'yi geçtiniz Seviye 4'ü geçtiniz Seviye 5'i tekrar ederken loop dışında geçtiniz 

Yukarıdaki örnekte, ilk kez döngü içindeki ifadeler yürütülür. Ve bir sonraki yineleme için durumu kontrol eder currentLevel <= finalLevel.

Koşul geri dönerse true, while döngüsü içindeki ifadeler yürütülür, aksi takdirde döngü sona erer.

Yürütme adımları
Yineleme Koşul (currentLevel <= finalLevel) Çıktı
1 0 <= 5 (doğru) Seviye 0'ı geçtiniz
2 1 <= 5 (doğru) 1. seviyeyi geçtiniz
3 2 <= 5 (doğru) 2. seviyeyi geçtiniz
4 3 <= 5 (doğru) 3. seviyeyi geçtiniz
5 4 <= 5 (doğru) 4. seviyeyi geçtiniz
6 5 <= 5 (doğru) 5. seviyeyi geçtiniz
7 6 <= 5 (yanlış) döngü sırasında tekrarlamanın dışında

Hem whileve hem de repeat whiledöngü aynı yürütme adımlarına sahip olsa da currentLevel <= finalLevel , repeat whiledöngüdeki koşul yalnızca içindeki ifadeler yürütüldükten sonra yürütülür.

Ama içinde while, içindeki ifadeler çalıştırılmadan önce, koşul başlangıçta kontrol edilir.

3. Döngü sırasında Sonsuz

Test ifadesi hiçbir zaman sonuç vermezse, falsebody whileand repeat… whiledöngüsü sonsuz sayıda çalıştırılır.

Örnek 3: Sonsuz Döngü

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

Programı çalıştırdığınızda, çıktı:

Selam Dünya! Selam Dünya!…

Programı çalıştırdığınızda, her iki döngü de print("Hello, World!")sonsuz sayıda ifade yürütür . Böylece, sürekli çıktı görebilirsiniz Merhaba, Dünya! konsolda.

Ilginç makaleler...