Turkcell | Geleceği Yazanlar

Android 101Başlangıç seviyesi derslerde Android uygulama geliştirme ortamını detaylı olarak inceliyoruz.

Tüm Eğitimleri Aldın mı? Kendini sınamanın tam zamanı

Haydi Sınava Gir

İç İçe for Döngüleri İçin Örnekler

Kategori : Mobil | Lisans : Creative Commons (by-nc-sa) | En son 12.09.2019 tarihinde güncellendi
Eğitmen : Geleceği Yazanlar Ekibi
Etiketler : java-icice-for java-for-ornek android

 

ÖRNEK 1:

Aşağıdaki programda, dış döngü olan a parametreli döngü 5 kez çalışıyor (a=1, 2, 3, 4, 5). a’nın her değeri içinse içteki döngü 3 kez çalışıyor (i=1, 2, 3). Böylece aşağıdaki çıktı elde ediliyor:

 

KOD BLOĞU:


 
public class IcIce 
{
  public static void main(String args[])
   { 
      int a,i; //5 kez tekrarla 
      for(a=1;a<=5;a++) 
       { 
         System.out.println("a= "+a);  
           for(i=1;i<=3;i++) //3 kez tekrarla
            { 
              System.out.println("i= "+i); 
             } 
         System.out.println(); 
        } 
     } 
} 

PROGRAMIN ÇIKTISI:

 

ÖRNEK 2: ÇARPIM TABLOSU

1’den 10’a kadar sayılar için bir çarpım tablosu hazırlamak istiyoruz. Bunun için iç içe 2 döngü yeterlidir ve her iki döngünün de parametresi 1’den 10’a kadar değişecektir. Programın kodu şu şekildedir:

 

KOD BLOĞU:


 
public class CarpimTablosu 
{ 
  public static void main(String args[])
   { 
     int altcizgi, i, j; 
     System.out.println(" 1 2 3 4 5 6 7 8 9 10 ");  
     for(altcizgi=1; altcizgi<=70; altcizgi++) //döngüyle uzunca bir çizgi çizelim
      { 
        System.out.print("_"); 
       } 
     System.out.println(); 
     for (i =1; i<=10; i++) 
      { 
        System.out.print(i+" | "); 
        for (j=1 ; j<=10 ; j ++) 
         { 
           System.out.print(i*j +" "); 
          } 
        System.out.println(); 
       } 
     }
} 

 

PROGRAMIN ÇIKTISI:

 


 

ÖRNEK 3: FAKTÖRİYELLİ TERİMLERDEN OLUŞAN SERİ TOPLAMI

Aşağıdaki seri toplamını hesaplayacak bir Java programı yazalım:

1/ 2!  +  1/3! + 1/4! +...+ 1/10!

Bu seri toplamını hesaplamak istediğimizde, iç içe iki döngü kullanmak gerektiğini hemen anlarız:

  • Her adımda, bir toplama işlemi gerektiren, terimlerin toplanmasının gerekli olduğu bir döngü (Yukarıdaki tek döngü örneklerindeki 1 + 2 + 3 + ... + n toplamı örneğini hatırlayalım.)
  • Yukarda belirtilen döngünün her parametre değeri için, o adımdaki faktöriyeli hesaplatmak zorunda olduğumuz ve o nedenle yukarıdaki döngünün içinde yer alması gereken bir döngü.

 

KOD BLOĞU:


 
public class FaktoriyelliSeri 
{ 
  public static void main(String args[])
   { 
     double s,fakt;
     int i,j; 
     s=0; 
     for (i=2;i<=10;i++) 
      { 
       fakt=1; 
       for(j=1;j<=i;j++) 
        { 
          fakt=fakt*j; 
         } 
        s=s+1/fakt; 
        System.out.println(s); 
       } 
     System.out.println("Seri toplami "+s); 
    } 
} 

PROGRAMIN ÇIKTISI:

 

Programın çalıştırılması sonucu  i, j, s ve fakt değişkenlerinin alacağı değerlerle ilgili tabloya göz atalım:

 

DIŞ ÇEVRİM   İÇ ÇEVRİM   FAKTÖRİYEL   TOPLAM  
i j fakt s
      0
2 1 1 0
2 2 2 1/2
3 1 1 1/2
3 2 3 1/2
3 3 6(1.2.3=3!)  1⁄2+1/6
4 1 1 1⁄2+1/6
4 2 2 1⁄2+1/6
4 3 6 1⁄2+1/6
4 4 24(1.2.3.4=4!)  1⁄2+1/6+1/24
... ... ... ...
10 10 10! 1⁄2+1/6+1/24+..
+1/20!

 

 

SORU: Yukarıdaki seri toplamını, sadece bir for döngüsü kullanarak hesaplatabilir miyiz?

CEVAP: Evet. Yukarıdaki seri toplamını tek bir for döngüsü ile hesaplatan ve aynı sonuçları elde eden Java programının kod bloğu şöyledir:


 
public class FaktoriyelliSeri2 
{ 
   public static void main(String args[])
    { 
      double s,fakt; 
      int i; 
      s=0;
      fakt=1; 
      for (i=2; i<=10; i++) 
       { 
         fakt=fakt*i; 
         s=s+1/fakt; 
         System.out.println(s); 
        } 
      System.out.println("Seri toplami: "+s); 
     } 
} 

PROGRAMIN ÇIKTISI