İlginizi Çekebilir
C# Override Örnekleri
C# For Döngüsü Örnekleri
  1. Ana Sayfa
  2. C#
  3. C# For Döngüsü Nedir?

C# For Döngüsü Nedir?

Bir yazılım dilini öğrenmeye başlarken attığımız ilk adımlarda karşılaştığımız “döngüler” kavramının en çok tercih edilen ve kullanılan bir alt dalı olan “C# For Döngüsü” kavramının detaylarına inerek öğrenme açlığımızı gidereceğiz.

🔁 Döngüler temel olarak tekrarlanabilir işlem bütünlerinin inşaatında kullandığımız ve bu süreç içerisinde bizlere çeşitli kolaylıklar sağlayan döngüsel işlem veya tekrarlı işlem olarak adlandırılan, çoğu zaman programlarımızın bir koşul altında tekrarlanma işlemidir. Daha önce “C# Döngüler” başlığı altında anlatmıştım. Döngüler konusunda daha genel bir bilgi edinim deneyimi sağlamak isterseniz emrecelen.com.tr/c-sharp-donguler/ içeriğime göz atmanızı tavsiye ederim. 👀

C# For Döngüsü Nedir?

C# For Döngüsü, oluşturmuş olduğumuz algoritma yapısında tanımlayacağımız koşul yapısının sağlandığı durumlarda döngümüzün çalışmasını ve çalıştıktan sonra yine koşul içerisinde belirlediğimiz işlemin gerçekleşmesini sağlayan bir kavramdır.

Teorik olarak anlaması zor gelmiş veya karmaşık bir yapı gibi algılamanıza olanak sağlamış olabilir. Bu karmaşıklığı ve anlamsızlığı ortadan kaldırmak için daha önce hazırlamış olduğum for döngüsünün akış diyagramını aşağıda sizlerle paylaşacağım ve bu akış diyagramı üzerinden basit bir örnek kullanımı ile bir anlatım gerçekleştireceğim.🎓

C# For Döngüsü Akış Şeması
C# For Döngüsü Akış Diyagramı

Bu for döngüsünün akış şemasını (flowchart) okuyabiliyorsanız daha doğrusu işlemlerin çalışma prensiplerini aklınızda canlandırabiliyorsanız aslında konuyu tam olarak anlamışsınız demektir. Tabii, yazılım konusunda ilk adımlarını atan ve yeni yeni konuları öğrenmeye başlayan kişilerinde olabileceğini düşünerek bu akış diyagramı üzerinden bir örnek yardımı ile C# For Döngüsü kavramını daha detaylı ve akılda yer edebilecek ince noktalar ile tekrardan for döngüsünü anlatmaya çalışacağım.👨🏻‍🏫

Örneğimiz üzerinde bir veri dizisini düşünelim. Bu dizimiz içerisinde analiz etmemiz ve teker teker incelememiz gereken değerlerin olduğunu ve bizimde bu dizi elemanlarına teker teker ulaşarak çeşitli sorgulamalar yapmamız gerektiğini düşünerek anlatımımıza başlayalım. 🕵🏻‍♂️

Akış diyagramımızın başında yer alan “başla” kısmı programımızın döngüyü oluşturduğu alana kadar çalışmış olduğunu ve çalıştırma esnasında herhangi bir sorun ile karşılaşmayıp döngümüzün bulunduğu ilgili satıra ulaştığını ve çalıştırmak için hazır olduğunu ifade eden kısımdır. Çalıştırma işlemi başlandıktan sonra programımız döngümüzün yapısını anlayabilmek için döngümüzün keyword alanına yani for kısmını inceler ve döngümüzün yapısını tanır. Döngümüzü tanıyan program daha sonra içerisinde tanımladığımız koşul yapısını kontrol etmeye çalışır. Bu vermiş olduğumuz örnek için yazabileceğimiz koşul yapısını şu şekilde örneklendirebiliriz: for(int i =0 ; i <= array.length; i++). Bu koşul yapımızın tanımlanması sonucunda programımız ilk başta hafızasında i değerini tutar ve daha sonra tutmuş olduğu bu değer ile koşul yapımızı kontrolünü sağlar eğer koşul yapımız sağlanıyorsa döngümüz içerisinde bulunan kod satırlarını çalıştırır ve daha sonra son yapımız olan “i++” yani arttırma işlemini gerçekleştirir. Bu işlemi koşul yapımızın sağlanmadığı zamana kadar tekrar tekrar gerçekleştirir.

Akış diyagramımızdan yardım alarak oluşturmuş olduğumuz örnek anlatımı sonucunda C# For Döngüsü kavramının aklımızda şekillendiğini ve teorik olarak “C# for döngüsü nedir” sorusuna cevap vermiş olduğumu düşünüyorum. Fakat tam anlamı ile kendimizi öğrenmiş sayabilmek için işin mutfağına girmemiz ve elimizdeki malzemeleri tanımamız gerekir. Bu yüzden elimizdeki malzemeleri tanıyacağımız ve bu malzemeleri nasıl kullanacağımızı öğreneceğimiz bir sonraki aşama olan “C# For Döngüsü Kullanımı” başlığına geçiş sağlayabiliriz.👨🏻‍🍳🎓👨🏻‍💻

C# For Döngüsü Kullanımı

C# For Döngüsü Kullanımı, yapısal olarak diğer döngü sistemlerinden daha karmaşık bir yapıdadır. C# For Döngüsü Kullanımını anlayabilmek için tanımlama yapımızı üç bölüme ayırarak tanımlamamız gerekmektedir. Bu bölümleri for(int i = 0 ; i <= 10 ; i++) sistemini kullanarak oluşturalım. İlk bölümümüz olan int i = 0 alanında döngümüzün koşul yapısında başlangıç değerinin tanımlamasını gerçekleştiriyoruz ve bu değeri istersek koşul yapımızın içerisinde istersek dışarısında tanımlamamız mümkündür. İkinci alanımızda (i < = 10) ise döngümüzün çalışması için belirlediğimiz temel koşul yapısı yer alır ve bu koşul true yapıda ise program döngü içerisindeki kod satırlarını çalıştırmaya başlar. Döngü içerisindeki kod satırları çalışıp bittikten sonra en son parametremiz olan i++ kısmının gerçekleşmesini sağlar ve tekrar koşul yapımızın kontrolünü sağlamak için ikinci adıma geçiş sağlar. Bu işlemler koşul yapımızın sağlanmadığı noktaya kadar devam eder.

Artık for döngümüzün yapısını öğrendiğimize göre programlarımızda nasıl bir tanımlama ile kullanacağımızı öğrenebiliriz.

for (int i = 0; i <= 10; i++)
{
    // komutlar çalışıyor...
    // komut satırı #1
    // Komut satırı #2
}

C# For Döngüsü Örnekleri

Elimizdeki malzemeleri yakından tanıdığımıza ve kullanım şeklinin nasıl olduğunu öğrendiğimize göre artık bu malzemeleri değerlendirerek mutfak bölümünde bu bilgilerimizi değerlendirerek çeşitli kodlar oluşturabiliriz.

C# For Döngüsü Örnekleri, genelde standart hale gelmiş belirli bir değerden başlayan başka bir değere kadar giden ekrana yazdırma ya da teklik çiftlik gibi kontrollerin sağlandığı çeşitli örnek yapıları paylaşımı yapılıyor. Ben ise bu işlemi gerçekten tam olarak ne işimize yarayabileceğini gösteren bir projenin küçük çaplı prototipini yaparak göstermeye çalışacağım.

Bu örneğimiz içerisinde küçük çaplı bir veri analizi yapabileceğimiz random değerlerden oluşan 200 verilik bir dizinin değerlerinin kaçının tek, kaçının çift ve kaç sayının 9 değerine tam bölündüğünü gösteren ve bu değerlerin toplamını konsol ekranımıza çıktı vermesini sağlayacak bir yapı oluşturarak gösterelim.

Bu belirlediğim c# for döngüsü örneğini yapabilmek için uyguladığım aşamalar şu şekildedir:

  1. İlk aşama olarak gerekli tanımlamaların ve kontroller sonucunda elde edilen değerlerin tutulacağı çeşitli değişkenlerin tanımlanmasını gerçekleştirdim.
  2. İkinci aşama olarak ise random şekilde değer alacak dizimin tanımlamasını gerçekleştirdim.
  3. Tanımlama işlemlerimi bitirdikten sonra ilk for döngümü oluşturarak her döngü işleminde random değer oluşumunu ve bu oluşan değerlerin teker teker diziye eklenmesini sağladım.
  4. Son aşama olarak bu eklediğim değerlerin kontrolünü sağlayacak if-else kontrol yapımı oluşturdum ve ulaştığım değerleri konsol ekranıma yazdırdım.

Bu işlemlerden sonra kod yapım aşağıdaki hale geldi:

namespace ForApp
{
    class Program
    {
        static void Main(string[] args)
        {
            string ayrac = new string('-', 6);
            int tekSayac = 0, ciftSayac = 0, tamBolenSayac = 0, tamBolenTek = 0, tamBolenCift = 0, randomDeger;
            int[] randomDizi = new int[200];

            Random random = new Random();

            // Random Değerlerden Oluşan Dizimizin Tanımlamasını Gerçekleştirdik.
            for(int i=0; i < randomDizi.Length; i++)
            {
                randomDeger = random.Next(1000);
                randomDizi[i] = randomDeger;
            }

            // Oluşturmuş Olduğumuz Dizi Elemanlarının Kontrolünü Sağlamaya Başlayabiliriz.

            for(int k=0; k< randomDizi.Length; k++)
            {
                if (randomDizi[k] % 2 == 0)
                {
                    ciftSayac += 1;
                    if (randomDizi[k] % 8 == 0)
                    {
                        tamBolenCift += 1;
                        tamBolenSayac += 1;
                    }
                        
                }
                else
                {
                    tekSayac += 1;
                    if (randomDizi[k] % 9 == 0)
                    {
                        tamBolenTek += 1;
                        tamBolenSayac += 1;
                    }
                }
            }

            Console.WriteLine("{0}\n< C# For Döngüsü Örnekleri #1 >\n{1}\n-> 200 elemanlık dizi içerisinde bulunan değerlerin kontrolünü sağladığımız bölüm.\n{2}", ayrac,ayrac,ayrac);
            Console.WriteLine("-> Tek sayı adeti: {0}\n-> Çift sayı adeti: {1} \n{2}\n-> Tam bölünen değerler: {3}\n-> Tam bölünen tek değerler : {4}\n-> Tam bölünen çift değerler: {5}\n{6}", tekSayac, ciftSayac,ayrac, tamBolenSayac, tamBolenTek, tamBolenCift,ayrac);
        }
    }
}

Kod Çıktısı:

C# For Döngüsü Nedir
C# For Döngüsü Örnekleri #1

İşlevsel bir örnek şablonu oluşturduğumuzu düşünüyorum. İlerleyen zamanlarda projelerimizde çoğu kez verilerin analiz edilmesi ve çoklu verilerin kontrolünü sağlarken bu tarz döngüler kurabileceğimizi öğrenmiş olduk.

🔗 Farklı bir döngü yapısı görmek için basit bir örnek daha oluşturmak istiyorum. Bu örneğimiz içerisinde iç içe for döngüsü kullanarak bir üçgen şeklinin konsol ekranına çıktısının verilmesini sağlayacağım. Bu örnek için uygulayacağım adımlar şu şekildedir:

  1. Öncelikle ilk aşama olarak üçgen yapımın satırlarını oluşturmak için bir for döngüsü tanımladım.
  2. Bu tanımlama işlemimden sonra satır yapılarıma ulaşmak ve ilgili atamaları gerçekleştirmek ve şekil almasını sağlayacağım ikinci for döngüsünün tanımlamasını gerçekleştirdim.
  3. Gerekli şekilleri almasını sağladığım for döngüsünden sonra yeni bir for döngüsü oluşturarak üçgen yapımın konsol ekranında “*” kullanarak şekillenmesini sağlayan alanın tanımlamasını gerçekleştirdim.

Bu işlemlerden sonra kod yapım aşağıda sizinle paylaştığım son halini almıştır.

namespace ForApp
{
    class Program
    {
        static void Main(string[] args)
        {
            for(int i=0; i < 5; i++) // Üçgenimizin kaç satırdan oluşacağını belirliyoruz.
            {
                for (int k = 0; k < 5 - i; k++) // Üçgen yapımızın satırlarının oluşmasında belirli sayıda boşluk atılmasını sağlayan adım.
                    Console.Write(" ");
                for(int j=0; j <= i*2; j++) // Üçgen yapımızı oluşturacak yıldızların belirli koşul yapısına bağlı olarak oluşmasını sağlayan döngü sistemi.
                    Console.Write("*");
                Console.Write("  -> {0}. Üçgen Satırı\n",(i+1));
            }
        }
    }
}

Kod Çıktısı:

C# For Döngüsü Örnekleri
C# For Döngüsü Örnekleri #2

Gerekli tanımlamalar, kullanım yöntemleri ve örnekler ile C# For Döngüsü Nedir sorusuna cevap verdiğimi düşünüyorum. Eğer C# For Döngüsü hakkında daha farklı bir kaynak arayışına girmek isterseniz Microsoft tarafından hazırlanmış rehber içeriğini sizler için öneririm. İlgili kaynağa buraya tıklayarak ulaşabilirsiniz. Unutmayın aklınıza takılan herhangi bir soruyu ya da konu işleyişi hakkında bulunacağınız çeşitli önerileri aşağıda bulunan yorum yap kısmından bana iletebilirsiniz. 👋🏻

Yorum Yap

Yazar Hakkında

Yazmayı, öğrenmeyi, öğrendiklerini paylaşmayı , kodlamayı ve günün birinde Yönetim Bilişim Sistemleri Uzmanı olmanın hayalini kuran birisiyim.

Yorum Yap