Bu makalede, while ve do… C # döngüde, bunların nasıl kullanılacağını ve aralarındaki farkı öğreneceğiz.
Programlamada, genellikle belirli bir sayıda belirli ifade bloğunun yürütülmesi istenir. Olası bir çözüm, bu ifadeleri gereken sayıda yazmak olacaktır. Bununla birlikte, tekrar sayısı önceden bilinmeyebilir (derleme sırasında) veya yeterince büyük olabilir (örneğin 10000).
Böyle bir soruna en iyi çözüm döngüdür. Döngüler, bazı koşullar karşılanana kadar belirli bir ifade bloğunu tekrar tekrar yürütmek için programlamada kullanılır.
Bu makalede, C # 'da while döngülerini kullanmayı öğreneceğiz.
C # döngü sırasında
Ederken anahtar kelime C # while döngüsü oluşturmak için kullanılır. While döngüsü sözdizimi şöyledir:
while (test-ifade) (// süre gövdesi)
Döngü nasıl çalışır?
- C #, döngü bir
test-expression
. - Olarak
test-expression
değerlendirilirsetrue
,- while döngüsü içindeki ifadeler çalıştırılır.
- yürütmeden sonra
test-expression
tekrar değerlendirilir.
- Olarak
test-expression
değerlendirilirsefalse
while döngüsü sona erer.
döngü Akış Şeması
Örnek 1: Döngü sırasında
using System; namespace Loop ( class WhileLoop ( public static void Main(string() args) ( int i=1; while (i<=5) ( Console.WriteLine("C# For Loop: Iteration (0)", i); i++; ) ) ) )
Programı çalıştırdığımızda çıktı şöyle olacaktır:
C # Döngü için: Yineleme 1 C # Döngü için: Yineleme 2 C # Döngü için: Yineleme 3 C # Döngü için: Yineleme 4 C # Döngü için: Yineleme 5
Başlangıçta i'nin değeri 1'dir.
Program while döngüsü ifadesine ulaştığında,
- test ifadesi
i <=5
değerlendirilir. İ 1 ve yana1 <= 5
olantrue
, bu ise döngü gövdesi yürütür. Burada Iteration 1 ile ekrana satır yazdırılır ve i'nin değeri 1 artırılarak 2 olur. - Şimdi, test ifadesi (
i <=5
) yeniden değerlendirilir. Bu sefer de ifade geri dönertrue
(2 <= 5), böylece satır ekrana yazdırılır ve i'nin değeri şimdi 3'e yükseltilir… - Bu gider ve while döngüsü i 6 olana kadar yürütülür. Bu noktada, test ifadesi olarak değerlendirilir
false
ve dolayısıyla döngü sona erer.
Örnek 2: İlk 5 doğal sayının toplamını hesaplamak için while döngüsü
using System; namespace Loop ( class WhileLoop ( public static void Main(string() args) ( int i=1, sum=0; while (i<=5) ( sum += i; i++; ) Console.WriteLine("Sum = (0)", sum); ) ) )
Programı çalıştırdığımızda çıktı şöyle olacaktır:
Toplam = 15
Bu program ilk 5 doğal sayının toplamını hesaplar.
- Başlangıçta toplamın değeri 0 olarak başlatılır.
- Her yinelemede, toplamın değeri olarak güncellenir
sum+i
ve i'nin değeri 1 artırılır. - İ'nin değeri 6'ya ulaştığında, test ifadesi
i<=5
yanlış döndürür ve döngü sona erer.
Her yinelemede verilen programda ne olduğunu görelim.
Başlangıçta, i = 1, toplam = 0
Döngü yürütme adımları sırasındaYineleme | İ değeri | i <= 5 | Toplamın değeri |
---|---|---|---|
1 | 1 | doğru | 0 + 1 = 1 |
2 | 2 | doğru | 1 + 2 = 3 |
3 | 3 | doğru | 3 + 3 = 6 |
4 | 4 | doğru | 6 + 4 = 10 |
5 | 5 | doğru | 10 + 5 = 15 |
6 | 6 | yanlış | Döngü sona erer |
Yani, toplamın son değeri 15 olacaktır.
C # yap … döngü sırasında
Yapmak ve yaparken anahtar bir do oluşturmak için kullanılır döngü sırasında …. Bir süre döngüsüne benzer, ancak aralarında büyük bir fark vardır.
Döngüde, vücut çalıştırılmadan önce koşul kontrol edilir. Do… while döngüsünün tam tersi, yani koşul vücut çalıştırıldıktan sonra kontrol edilir.
Bu nedenle, do… while döngüsünün gövdesi, test ifadesine bakılmaksızın en az bir kez çalıştırılır.
Do… while döngüsü sözdizimi şöyledir:
do (// do while döngüsü) while (test-ifade);
Nasıl… döngü çalışırken?
- Do… while döngüsü ilk başta çalıştırılır.
- Daha sonra
test-expression
değerlendirilir. - Eğer
test-expression
birtrue
döngü gövdesi yürütülür. - Ne zaman
test-expression
olduğunufalse
, do … döngü sona erdiği süre.
yap… döngü Akış Şeması
Örnek 3: do… while döngüsü
using System; namespace Loop ( class DoWhileLoop ( public static void Main(string() args) ( int i = 1, n = 5, product; do ( product = n * i; Console.WriteLine("(0) * (1) = (2)", n, i, product); i++; ) while (i <= 10); ) ) )
Programı çalıştırdığımızda çıktı şöyle olacaktır:
5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25 5 * 6 = 30 5 * 7 = 35 5 * 8 = 40 5 * 9 = 45 5 * 10 = 50
As we can see, the above program prints the multiplication table of a number (5).
- Initially, the value of i is 1. The program, then enters the body of do… while loop without checking any condition (as opposed to while loop).
- Inside the body, product is calculated and printed on the screen. The value of i is then incremented to 2.
- After the execution of the loop’s body, the test expression
i <= 10
is evaluated. In total, the do… while loop will run for 10 times. - Finally, when the value of i is 11, the test-expression evaluates to
false
and hence terminates the loop.
Infinite while and do… while loop
If the test expression in the while and do… while loop never evaluates to false
, the body of loop will run forever. Such loops are called infinite loop.
For example:
Infinite while loop
while (doğru) (// while döngüsünün gövdesi)
Sonsuz yapmak… döngü sırasında
do (// while döngüsü gövdesi) while (doğru);
Sonsuz döngü, programımız çalıştığı sürece çalışacak bir döngüye ihtiyacımız olduğunda kullanışlıdır.
Örneğin, programınız bir animasyon ise, durdurulana kadar sürekli çalıştırmanız gerekecektir. Bu gibi durumlarda, animasyonu tekrar tekrar çalıştırmaya devam etmek için sonsuz bir döngü gereklidir.