For ve while döngüsü arasındaki farklar

Yazar: Laura McKinney
Yaratılış Tarihi: 2 Nisan 2021
Güncelleme Tarihi: 10 Mayıs Ayı 2024
Anonim
For ve while döngüsü arasındaki farklar - Teknoloji
For ve while döngüsü arasındaki farklar - Teknoloji

İçerik


C ++ ve Java'da, yineleme ifadeleri, döngü için, while ve while döngüsü iken, koşul doğru oluncaya ve koşul yanlış olduğunda en kısa sürede sona erene kadar, komut setinin art arda yürütülmesine izin verir. Yineleme ifadelerindeki koşullar, döngü için olduğu gibi önceden tanımlanabilir veya while döngüsü olarak açık uçlu olarak tanımlanabilir.

Uygulanabilirlik, güç ve esnekliği arttırmak için C ++ 'da birkaç' for 'döngü varyasyonu vardır. Örneğin, for döngüsü kontrol etmek için loop içinde birden fazla değişken kullanmamıza ve ‘for’ ile birleştirme işlevinin kullanılmasına izin verir. Tersine, döngü sırasında standart sözdiziminde kullanılması gereken birçok varyasyonu kullanamayız.

Karşılaştırma çizelgesi yardımıyla daha detaylı bir şekilde açıklanan döngü döngüleri arasında ve süreleri arasında bazı büyük farklılıklar vardır.


  1. Karşılaştırma Tablosu
  2. Tanım
  3. Anahtar Farklılıklar
  4. Sonuç

Karşılaştırma Tablosu

Karşılaştırma için temeliçin süre
deklarasyoniçin (başlatma; koşul; yineleme) {
// döngü için gövde
}
while (koşul) {
ifadeleri; // döngü gövdesi
}
BiçimBaşlatma, durum kontrolü, yineleme ifadesi döngünün en üstüne yazılır.Döngünün tepesinde sadece başlatma ve durum kontrolü yapılır.
kullanımFor döngüsü yalnızca yineleme sayısını bildiğimizde kullanılır.While döngüsü yalnızca yineleme sayısı tam olarak bilinmediğinde kullanılır.
Şart, koşulEğer durum döngü için kullanılmazsa, döngü sonsuz zamanları tekrarlar.Eğer durum döngü sırasında belirtilmezse, derleme hatası verir.
BaşlatmaDöngü için bir kez yapılan başlatma asla tekrarlanmaz.Durum kontrolü sırasında başlatma yapılırsa döngüde, döngü tekrarlandığında başlatma yapılır.
Yineleme deyimiDöngü için yineleme ifadesi en üste yazılır, bu nedenle, yalnızca döngüdeki tüm ifadeler çalıştırıldıktan sonra yürütülür.While döngüsünde, yineleme ifadesi döngünün herhangi bir yerine yazılabilir.


For loop'un tanımı

Java’da iki tür için döngüler. İlk form “geleneksel” form, ikincisi “her biri için” formdur.

Sözdizimi

Döngü ifadesi için geleneksel biçimdir.

(başlatma; koşul; yineleme) {// için for body}

  • Başlatma - Döngü kontrol değişkeninin başlatılması, döngünün ilk yinelemesi sırasında yalnızca bir kez gerçekleştirilir. Burada, döngü kontrol değişkeni başlatılır, bazen döngü değişkeni programın herhangi bir yerinde tekrar kullanılmazsa ve yalnızca döngü kontrol değişkeni olarak kullanılırsa, hem döngü için hem de bildirilir ve ilklendirilir.
  • Şart, koşul - 'for' döngüsünün koşulu, döngü her tekrarlandığında gerçekleştirilir.
  • Artış ve yineleme- iteration deyimi, döngü kontrol değişkenini artıran veya azaltan bir ifadedir.

Döngü her çalıştırıldığında, ilk başlatma koşulu ilk çalıştırılır; sonra durum kontrol edilir. Koşul sağlanmışsa, döngünün gövdesi çalıştırılır, sonra iterasyon ifadesi çalıştırılır. Daha sonra tekrar, döngünün daha fazla tekrarlanacağını veya sonlanacağını bilmek için durum kontrol edilir.

Java'da, başlatma ifadesi ve yineleme ifadesi birden fazla ifade içerebilir. Her deyim virgülle ayrılır, Java'da virgül bir ayırıcıdır, C ++ 'da “virgül” herhangi bir geçerli ifadede kullanılabilecek bir operatördür.

her döngü ve sözdizimi

“Her biri için” formu döngü için geliştirilmiştir. Her bir döngünün genel formu aşağıdaki gibidir.

((iter_variable: collection) deyim bloğu için)

Burada “type”, yineleme değişkeninin türünü ve ardından yineleme değişkenini belirtir. Yineleme değişkeni, öğeyi koleksiyon değişkeninden alır. Tür, koleksiyon değişkeninde depolanan öğelerin türüyle aynı olmalıdır. Her for for döngüsü, döngünün yinelenmesini, sıralı sırayla değerlere erişmeye baştan sona otomatikleştirir.

Örnek

Döngü için kullanılan çeşitli koleksiyon türleri vardır. Bunu bir dizi olarak koleksiyon olarak tartışalım.

genel sınıf Main {genel statik geçersiz main (String args) {int array = {10, 20, 30, 40, 50, 60}; int add = 0; (int c: array) {System.out.ln ("c" + c'deki değer); add = add + c; } System.out.ln ("dizi elemanlarının eklenmesi" + eklemedir); }} // c 10 değerinde c 20 değerinde c 20 değerinde c 30 değerinde c 40 değerinde c 50 değerinde c 60 değerinde dizi elementleri 210

Burada, 'c' bir yineleme değişkenidir; diziyi, her seferinde bir tane olmak üzere, en düşük dizinden dizideki en yüksek dizine kadar olan değerleri alır. Burada döngü, dizinin tüm elemanları incelenene kadar yinelenir. Aradaki döngüyü “break” kullanarak sonlandırmak mümkündür. Ancak, yineleme değişkenindeki değişiklik, yalnızca salt okunur bir değişken olduğu için diziyi etkilemez.

While döngüsünün tanımı

süre döngü, C ++ ve Java ile kullanılabilen en temel döngüdür. Bir süre döngüsünün çalışması hem C ++ hem de Java'da benzer.

Sözdizimi

Bir süre döngüsünün bildirimi aşağıdaki gibidir

while (koşul) {ifadeler; // döngü gövdesi}

While döngüsü ilk önce koşulu kontrol eder ve sonra ifadeler, while döngüsü doğru çıkıncaya kadar koşulu yerine getirilir. While döngüsündeki koşul, herhangi bir boole ifadesi olabilir. Bir ifade sıfır olmayan bir değer döndürdüğünde, koşul true olur ve ifade sıfır bir değer döndürürse, koşul yanlış olur.

Koşul doğru olursa, döngü kendini tekrar eder ve koşul yanlış olursa, kontrol hemen ardından döngü tarafından takip edilen kodun sonraki satırına geçer. İfadeler veya vücut döngüsü, boş bir ifade veya tek bir ifade veya ifade bloğu olabilir.

Örnek

Bir süre döngüsünün çalışmasını tartışalım. Aşağıdaki örnekte kod 1'den 10'a kadar olacaktır.

// örnek Java’da. genel sınıf Main {genel statik geçersiz main (String args) {int n = 0; iken (n <10) {n ++; System.out.ln ("n =" + n); }}} // çıkış n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10

Burada, 'n' nin başlangıç ​​değeri 0'dır ve bu durum döngü sırasındaki durumu doğrular. Kontrol daha sonra while döngüsünün gövdesine girer ve ‘n’in değeri bir while döngüsü gövdesindeki ilk ifadeye göre artırılır. “N” değeri değiştirilir, daha sonra kontrol bir süre döngüsündeki duruma geri döner, şimdi “n” değeri tekrar koşulu yerine getiren 1'dir ve döngünün gövdesi tekrar yürütülür. Bu durum doğru oluncaya kadar devam eder, koşul yanlış olduğunda, döngü sona erer.

"Döngü" gibi, "süre" döngüsü de durum kontrolü sırasında döngünün en üstündeki kontrol değişkenini başlatabilir.

// örneğin while ((ch = getchar ())! = A) {System.out.ln ("Giriş alfabesi" + ch); }

Burada variable ch control kontrol değişkeni başlatılır ve döngünün koşulu döngünün üstünde doğrulanır.

Not:

Bir döngü için veya bir süre döngüsü olabilir, döngü gövdesinde yalnızca bir ifade varsa, bu durumda küme parantezine gerek yoktur.

  1. İçinde için döngü, başlatma, durum kontrolü ve yineleme değişkeninin artması veya azalması açıkça yalnızca bir döngünün sözdiziminde yapılır. Karşı olarak süre döngü sadece döngü sözdizimindeki koşulu başlatabilir ve kontrol edebiliriz.
  2. Bir döngü uygulamasında gerçekleşmesi gereken yineleme sayısının farkında olduğumuzda, için döngü. Öte yandan, bir döngüde gerçekleşmesi gereken yineleme sayısının farkında değilsek, o zaman süre döngü.
  3. Koşulu ifade koymak başarısız olursa için döngü, bir döngü sonsuz bir yinelemeye yol açacaktır. Aksine, koşul ifadesini koymak başarısız olursa süre döngü bir derleme hatasına yol açacaktır.
  4. Sözdiziminde ilklendirme ifadesi için döngü, döngünün başında yalnızca bir kez yürütülür. Aksine, eğer süre döngü, başlatma ifadesini sözdiziminde taşıyor, ardından while döngüsündeki başlatma ifadesi, döngü her yinelendiğinde yürütülür.
  5. Yineleme deyimi için Döngü için vücut çalıştırdıktan sonra döngü yürütülür. Aksine, yineleme ifadesi, vücudunun herhangi bir yerinde yazılabilir. süre Böylece döngü, while döngüsü ifadesinde iteration deyiminin yürütülmesinden sonra yürütülen bazı ifadeler olabilir.

Sonuç:

For loop ve while döngüsü her ikisi de yineleme ifadesidir, ancak her ikisinin de kendine has özellikleri vardır. For döngüsü, döngünün gövdesinin üstünde tüm bildirimlerine (başlatma, koşul, yineleme) sahiptir. Tersine, döngü içinde yalnızca başlangıç ​​ve koşul döngü gövdesinin tepesinde iken yineleme, döngü gövdesinde herhangi bir yere yazılabilir.