While döngüsü, do while döngüsü ve for döngüsü arasındaki fark nedir?


cevap 1:

Döngü, koşul her seferinde karşılandığında yinelemeyle çalışan bir ifadeden başka bir şey değildir.

Üç husus dikkate alınmalıdır. Bunlar başlatma, test koşulu, güncelleme bölümüdür.

Bizim için üç döngü var. while döngüsü, while döngüsü, loop için.

Tüm döngüler arasında her döngünün kendi önemi vardır.

1. döngü için: bu döngü başlatma, test koşulu, güncelleme bölümü olarak yazmak için daha esnektir 'sonra' anahtar kelime sonra yazılır. Bu döngü, her yineleme için koşulu kontrol ettiği anlamına gelir; koşul doğruysa, yalnızca yürütür.

While while döngüsü: Bu döngü aynı zamanda for döngüsü ile aynı giriş kontrol döngüsüdür. Ancak while döngüsü yalnızca while anahtar sözcüğünden sonra test koşulu ve ondan önce başlatma ve döngü içindeki güncelleme bölümünü içerir.

3.do while döngüsü: Bu döngü hem döngüler hem de döngülerle karşılaştırıldığında bazı farklı yapılara sahiptir. while döngüsü, loop gövdesini yürüttüğü anlamına gelen bir çıkış kontrol döngüsüdür, ardından durumu kontrol eder. Bu döngü içinde güncelleme bölümü ve anahtar kelimeler süre sonra test koşulu vardır.


cevap 2:

Buna teknik olarak cevap vermenin birçok yolu vardır, ancak bence bu soruları cevaplamanın iyi bir yolu teknik olmaktan ziyade pragmatiktir. Bu anlamda, döngü türlerindeki gerçek fark size sunduklarıdır. Hadi bir bakalım.

### Döngüler Sırasında

Ne içindir: Döngüler, kaç kez gerçekleştiğine bakılmaksızın, belirli bir koşul karşılandığı sürece bir iş bloğu yapmaya devam etmek istediğinizde kullanılır. Bu tür bir döngüyü kelimelere dökmek için, “X kadar, Y yapın.” Derdiniz.

Ne elde edersiniz: Koşullu bir ifade. Bu kadar. Koşullu, ilmekli bloğun her yürütülmesinden önce (ilki dahil) kontrol edilir ve döngü yalnızca ifade yanlış olarak değerlendirildiğinde kesilir.

Gotchas: Döngünün yürütülmesini kontrol eden tek şey koşullu ifade olduğundan, sonsuz döngülerden kaçınmaya dikkat etmelisiniz.

### Yap-Döngüleri

Ne için: Adından da anlaşılacağı gibi, while döngülerine benzerler. Temel fark, do-while döngülerinin bir kez çalıştırılacağı garantisidir.

Ne elde edersiniz: while döngüsü gibi, elde ettiğiniz tek şey koşulludur. Tek fark, ifadeyi değerlendirmeden önce bloğun bir kez çalıştırılmasıdır.

Gotchas: Döngüler ve do-while döngüleri birbirinin yerine kullanılamazken. Eldeki görev için en iyi seçeneği seçin.

### Döngüler için

Onlar ne için: Döngüler, döngünün her yönü üzerinde mutlak kontrol istediğiniz zaman içindir. Döngüsel çalışmanızın hangi adımda olduğunu, nereye gittiğini ve oraya ne kadar hızlı geldiğini bilmesi gerekiyorsa, döngüler için ihtiyacınız olan şeydir. Döngünüzün tam olarak kaç adım atmasını istediğinizi biliyorsanız, for döngüsü kullanın.

Ne elde edersiniz: Bir yineleyici, bir artış ve bir koşul. İkincisi, while ve do-while döngülerindeki koşul gibidir. Yineleyici, yineleme konumunuzu temsil eden bir tamsayı değişkenidir ve artış her yinelemeden sonra yineleyicinin ne kadar değiştiğidir. Geleneksel olarak, bir for döngüsü 0'dan başlar ve 1 artar. Örneğin, diyelim ki myThings adında bir dizimiz var ve bir for döngülerini kullanarak tüm diziyi yinelemek istedik, şöyle görünecektir:

for (i = 0; i 

Bu örnekte, i = 0 yineleyicinin başlatılmasıdır (i 0'da başlar), i ++ yineleyicinin artmasıdır (sonraki her yinelemeden önce i 1 artırılır) ve i

Gotchas: Bunu doğru şekilde yapılandırmazsanız, bir dizinin sonunun ötesinde dizin oluşturmaya ve uygulamanızı kilitlemeye çalışabilirsiniz. Ayrıca, for döngüsünde bile sonsuz bir döngüye girmek hala mümkündür.

### Diğer

Birçok modern dilde, dizilerin çeşitli yineleme türleri vardır, örneğin: şuna benzer döngüler:

köpeklerde köpek için {// köpekle bir şeyler yap}

Temel olarak, "dogs dizisindeki her öğe için bu bloğu yürütün" der. Dogs dizisindeki her köpek için, blok yürütülür ve bloktaki kod bir köpeğe sürekli olarak etkileşime girer.

Başka yinelemeli uygulamalar da vardır, ancak bunlar ana olanlardır ve diğer birçok tür erken ayrılmanıza izin vermez, bu da kime konuştuğunuza bağlı olarak teknik olarak “döngüler” yapmamasını sağlar.

Bu nedenle, her zaman kendinize şu anki probleminiz için neye ihtiyacınız olduğunu sormayı unutmayın, çünkü iş için en iyi araç ihtiyacınız olan her şeyi yapan ve yapmadığınız hiçbir şey değildir.


cevap 3:

Döngü için:

Bir kontrolün sonuna ulaşıncaya kadar tekrar eder:

(i = 0; i 

Döngü sırasında:

Bir koşul geçerliyken yinelenir:

while (i 

Yaparken:

While döngüsü gibi, ancak her zaman en az bir kez girer (menüler için iyi):

- {std :: cout << dizi [i] << std :: endl; i ++; } while (i