İlginizi Çekebilir
Java Do While Kullanımı
  1. Ana Sayfa
  2. Java
  3. Java Do While Döngüsü Nedir?

Java Do While Döngüsü Nedir?

Algoritmanın ilk konularından birisi olan “döngüler” kavramının oldukça karışık bir alt dalı olan “Java Do While Döngüsü” yapısını gelin birlikte inceleyerek öğrenelim.

Döngü yapıları programlarımızda kullandığımız kod bloklarının belirli koşullar doğrultusunda tekrarlanabilir bir yapı altında çalışmasına imkan sağlayan, döngüsel işlemler veya tekrarlı işlemler olarak adlandırılan, projelerimizin vazgeçilmez haline gelen önemli bir kavramdır. Daha önce döngüler kavramını genel hatlarıyla inceleyip “Java’da Döngüler” başlığı altında bir rehber içerik oluşturmuştum. Genel bir bilgi edinim deneyimi kazanmak isterseniz emrecelen.com.tr/javada-donguler/ bu adresten oluşturmuş olduğum rehber içeriğine göz atabilirsiniz. 🔄👀

Java Do While Döngüsü Nedir?

Java Do While Döngüsü, oluşturmuş olduğumuz döngü koşulları her ne yapıda olursa olsun en az bir kere çalışan ve daha sonra koşul yapısının kontrol edildiği, diğerlerinden oldukça farklı bir yapıda olan tekrarlanabilir işlem yapısıdır.

Bu teorik tanımı aklımızda canlandıramamış veya anlayamamış olmamız oldukça normal karşılanabilir. Bunun önüne geçmek için daha önceden hazırlamış olduğum do while döngüsünün akış şemasını aşağıda sizlerle paylaşmak istiyorum. Daha sonra bu akış şemasını kullanarak aşamaların ne anlama geldiğini bir örnek üzerinden anlatmaya çalışacağım. 👨🏻‍🏫🎓

Java Do While Döngüsü Nedir
Java Do While Döngüsü Akış Şeması

Bu tür rehber içeriklerimde akış şemasını (flowchart) kullanmayı oldukça çok seviyorum. Bunun sebebi akış şemalarının bana algoritmik düşünmemize fırsat sağladığını ve teorik olarak anlamadığımız kavramların beynimizde canlanmasına imkan sağlıyor gibi geldiğinden olabilir. Tabii, yazılım konusunda ilk adımlarınızı atıyorsanız bu akış şemasını okumakta, anlamakta zorluklar çekebilirsiniz ama korkmayın. Elimden geldiğince basit bir yapıda sizlere yukarıdaki akış şemasının çalışma mantığını anlatmaya ve “Java Do While Döngüsü” kavramını anlatmaya çalışacağım. 🧑🏻‍💻

Akış şemasını bir örnek uygulamadan faydalanarak anlatmam daha yararlı olacaktır. Bu yüzden hayalimizde bir örnek uygulama oluşturarak do while döngüsünün çalışma prensibini akış şemasından faydalanarak öğrenmeye çalışalım. Anlatımda kullanmak için oluşturacağımız örnek yapıda basit bir çarpım tablosu uygulaması düşünebiliriz.

Akış şemasını incelediğimiz zaman ilk adımımızın “do” kısmının olduğunu görebiliriz. Bu kısım içerisinde çarpım tablosunun oluşmasını sağlayacak temel döngü komutları yer alır, daha sonra bu komut satırları çalışma başlar. Çalışma işlemi bittikten sonra döngümüzün koşul yapısı kontrol edilir. Bu kontrol işlemi sırasında “true” bir değer dönüyorsa döngümüz tekrardan çalışmaya başlar ta ki koşul yapımızın kontrolünden “false” değeri dönene kadar.

Bu anlatımı örneğimiz üzerinden düzenleyecek olursak çarpım tablomuzda kullanıcıdan alınan değerin, yine kullanıcıdan talep edilen değere göre sonuçların oluşması gerekiyor. Bu yüzden do yapımızın içerisine ilk değeri her zaman “bir” olarak kabul ederek çarpım işleminin gerçekleşmesini sağlayacak yapımızı oluştururuz. Daha sonra döngümüzün çalışmasını sağlayacak koşul yapımızı oluştururuz. Bu koşul yapımız şu şekilde örneklendirilebilir: while(baslangicDegeri <= kullanicininDegeri). Bu şekilde basit bir akış şemasının oluşmasını tanımlayabiliriz.

Akış şemasının çalışma prensibini anlattığıma ve bunu bir örnek yardımıyla tekrar ele almam sonucunda “Java Do While Döngüsü” konusunun aklımızda bazı şeylerin şekillenmesine yardımcı olduğunu ve teorik olarak “Java do while döngüsü nedir” sorusuna cevap vermiş olduğumu düşünüyorum. Tabii elimizde bulunan teorik bilgiyi nasıl değerlendireceğimiz ve kullanacağımızı henüz bilmiyoruz. Bunun için işin mutfağına inerek elimizdeki bu bilginin nasıl kullanılacağını öğreneceğimiz “Java Do While Kullanımı” başlığına geçiş sağlayabiliriz. 👨🏻‍🍳🎓👨🏻‍💻

Java Do While Kullanımı

Java Do While Kullanımı, diğer döngü sistemlerinden farklı bir çalışma prensibine sahiptir. Öncelikle tanımlamak için “do” alanını oluştururuz ve programımızın döngü içerisinde çalıştırılacağı kod satırlarını bu alana yazarız, daha sonra döngümüzün gerçekleşmesi için belirleyeceğimiz koşul yapısını “while” kısmında belirleyerek tanımlamasını gerçekleştiririz.

Teorik olarak nasıl tanımlayacağımız ve programlarımızda kullanacağımızı öğrenmiş olduk. Gelin bu teorik bilginin birde kod içerisindeki yapısını inceleyerek bu bilgimizi pekiştirelim.💪🏻

do{
    /// Komut satırı #1
    /// Komut satırı #2
    /// Komut satırı #3
} while (kosulYapisi);

Öğrenmiş olduğumuz teorik bilginin, programlarımızda nasıl kullanılacağını öğrendiğimize göre artık işin eğlenceli kısmı olan, bilgimizi işleyeceğimiz, kod yazacağımız ve java do while döngüsü konusunu tamamen öğrenebileceğimiz bir sonraki aşama olan “Java Do While Döngüsü Örnekleri” başlığına geçiş yapabiliriz.

Java Do While Döngüsü Örnekleri

Genel olarak “Java Do While Döngüsü Örnekleri” artık standart bir yapıya gelmiş bir başlangıç değerinden bitiş değerine kadar değerlerin int, string, double veri tiplerinde ekrana yazdırılması gibi örnek yapılardan oluşmaktadır.

Bu örnek yapılarının hayal gücümüzü körelttiğini ve anlık olarak konuyu anlamamıza yardımcı olduğunu düşünüyorum. Bunun için farklı bir yol izleyerek java do while örnekleri başlığı altında işlevsel olabilecek ve kullanımı hakkında daha etkin bir fikre sahip olabileceğimiz değişik örnekler oluşturmayı istiyorum.

Akış şemasını anlatırken kullandığım örnek olan çarpım tablosunu ele alarak bir örnek program oluşturalım. Bu örnek yapımızda kullanacağımız çarpım tablosunun ilk yapacağı işlem kullanıcıdan alacağı değeri hafızasında tutarak yine kullanıcıdan alacağı ikinci değere kadar çarpım işleminin gerçekleşmesini sağlayacak bir döngü sistemi oluşturmaya çalışalım.

Bu java do while döngüsü örneğini oluşturmak için uyguladığım aşamalar şu şekildedir:

  1. Çarpım işlemini gerçekleştirmek için kullanıcıdan alacağım değerlerin ve gerekli atamaların gerçekleşeceği çeşitli değişkenlerin tanımlanmasını gerçekleştirerek örneğimin inşaatına başladım.
  2. Daha sonra kullanıcıdan değer alınarak tanımlamış olduğum değişkenlere atanmasını sağlayacak “Scanner” sınıfının tanımlamasını gerçekleştirdim.
  3. Bu işlemimden sonra kullanıcıdan veri talebinde bulunacağım ve bu değerlerin ne olarak kullanılacağını belirttiğim ekran çıktılarını oluşturdum.
  4. İlgili değerleri aldıktan sonra döngümü oluşturacak ilk adım olan “do” satırının içeriğini yazmaya başladım.
  5. İşlemlerim bittikten sonra döngümün belirli bir koşul doğrultusunda çalışmasını sağlayacak “while” yapısını belirledim.

Bu tanımlamalar ve uygulamalardan sonra kod bloğum aşağıdaki halini almış oldu.

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        ///---> Değişken Tanımlamaları <---\\\
        int baslangicDegeri = 1,carpimSonucu, carpilanDeger, carpimAdeti;
        String ayrac = new String(new char[6]).replace("\0","-");

        ///---> Kullanıcıdan Veri Almak İçin Scanner Sınıfının Tanımlanması <---\\\
        Scanner scanner = new Scanner(System.in);

        System.out.println(ayrac+"\n< Java Do While Döngüsü Örnekleri #1 >\n"+ayrac);
        System.out.print("-> Çarpımın gerçekleştirileceği değeri girin: ");
        carpilanDeger = scanner.nextInt();
        System.out.print("-> Bu değerin hangi değere kadar çarpılacağını belirtin: ");
        carpimAdeti = scanner.nextInt();
        System.out.println(ayrac);
        do{
            carpimSonucu = baslangicDegeri * carpilanDeger;
            System.out.print("-> "+carpilanDeger+" * "+baslangicDegeri+" işleminin sonucu "+carpimSonucu+" değeridir.\n");
            if(baslangicDegeri == carpimAdeti)
                System.out.println(ayrac);
            baslangicDegeri++;
        }while(baslangicDegeri <= carpimAdeti);
    }
}

Kod Çıktısı:

Java Do While Döngüsü Nedir
Java Do While Döngüsü Örnekleri #1

Bu basit ama işlevsel olan örnek sayesinde nasıl bir do while döngüsü oluşturacağımızı öğrenmiş olduk. Fakat tamamen do while döngüsünün çalışma prensibini anlamış olamadık. Bu yüzden daha farklı bir bakış açısı kazanacağımız yeni bir örnek oluşturmak istiyorum.

Bu örnek yapımız içerisinde tamamen eğlenebileceğimiz ve do while döngüsünün çalışma mantığını anlayabileceğimiz bir sistem oluşturmak istiyorum. Oluşturacağım bu sistem içerisinde random bir değer oluşturarak, kullanıcıdan kendi belirleyeceği tahmin hakkı doğrultusunda bu değerin tahmin edilmesini sağlayacak bir döngü sistemi oluşturmak istiyorum.

Bunun için uygulayacağım aşamalar ise şu şekilde olacaktır:

  1. Her örnekte olduğu gibi çeşitli değerleri tutabileceğim ve kullanıcıdan alacağım verilerin kontrolünü sağlamak amacıyla kullanacağım değişkenlerin tanımlamasını gerçekleştirerek örneğimi oluşturmaya başladım.
  2. Daha sonra kullanıcıdan veri almak ve program çalıştığında sürekli rastgele bir değer oluşmasını sağlamak amacıyla scanner ve random sınıflarımın tanımlamasını gerçekleştirdim.
  3. Bu tanımlama işlemlerim bittikten sonra döngü sistemimi kurarak içerisinde çeşitli sorgulamaları yapacağım if-else kontrol yapılarını oluşturdum.

Bu basit üç aşamadan sonra kod bloğumun yapısı aşağıdaki halini almıştır.

import java.util.Random;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        ///---> Değişkenlerin Tanımlanması <---\\\
        int tahminDegeri,tahminHakki,randomDeger,tahminHakkiSorgulama = 0;
        String mark = new String (new char[6]).replace("\0","-");

        ///---> Kullanıcıdan Değer Almak için Scanner Sınıfının ve Random Değer oluşturmak için Random Sınıfının Tanımlanması <---\\\
        Scanner s = new Scanner(System.in);
        Random r = new Random();

        System.out.println(mark+"\n< Java Do While Döngüsü Örnekleri #2 >\n"+mark);
        System.out.print("-> Kaç tahmin hakkı istersiniz: ");
        tahminHakki = s.nextInt();
        randomDeger = r.nextInt(10);
        System.out.println(mark);
        do{
            System.out.print("-> Tahminde bulunun: ");
            tahminDegeri = s.nextInt();
            if(tahminDegeri ==randomDeger){
                System.out.print(mark+"\n-> "+(tahminHakkiSorgulama+1) +". hakkınızda doğru tahmin olan "+randomDeger +" değerini bildiniz.\n"+mark);
                break;
            }
            else{
                tahminHakkiSorgulama++;
            }
            if(tahminHakkiSorgulama == tahminHakki){
                System.out.println(mark+"\n"+"-> Üzgünüm hakkınız bitti. Tahmin etmeniz gereken değer "+randomDeger+" olacaktı.\n"+mark);
            }
            else if(tahminHakki <= 0 && tahminDegeri != randomDeger)
                System.out.println(mark);
        }while(tahminHakkiSorgulama < tahminHakki);
    }
}

Kod Çıktısı:

Java Do While Kullanımı
Java Do While Döngüsü Örnekleri #2

Gözlemleyebileceğiniz gibi kullanıcı “0” deneme hakkının olmasını belirtmiş. Bu belirtilen deneme hakkı sayısı koşul yapımızın false olarak dönmesini sağlasa bile programımız do while döngüsünün yapısı gereği bir kere çalıştıktan sonra programımızı sonlandırıyor.

Java Do While Döngüsü Nedir” sorusuna cevap verdiğimiz bu içeriğime ek olarak Oracle tarafından hazırlanan rehber içeriği ile takviye yapmanızı öneririm. Bu bahsetmiş olduğum içeriğe buraya tıklayarak ulaşabilirsiniz.

Umarım sizin için açıklayıcı ve öğretici bir rehber içeriği olabilmiştir. Unutmayın aklınıza takılan herhangi bir soruyu ya da konu işleyişi hakkında aklınıza gelen bir fikri 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