Java Soru Çözümleri 13 – Üçgen Oluşturma

Merhabalar. Bugünkü sorumuz algoritma bilgilerimizi tazeleyecek bir konuyla ilgili. Karışık bir algoritması var bana göre fakat anlayınca, sürekli buna benzer sorular çözmekten kendinizi alamayacaksınız  🙂

Klavyeden bir sayı gireceğiz ve o sayı sayesinde “*” işaretiyle bir üçgen oluşturmuş olacağız.

Örneğin; klavyeden 15 sayısını girdiğimizde çıktımız şöyle olacak:

Kodlarımızı yazmaya başlamadan önce algoritmanın mantığını çözmeye çalışalım. Fark ettiyseniz * sayımız belli bir kurala göre dizilmiş.

1 – 3 – 5 – 7 – 9 gibi. Yani koda dönüştürmek isteseydik bunun kuralı 2*i+1 şeklinde olacaktı.

Diğer bir kural ise boşluklar. Boşluklar da bir kurala göre oluşmuş oluyor bu durumda.

10 – 9 – 8 – 7 – 6 gibi. Boşlukları da for döngüsü ile koda dönüştüreceğiz. Algoritma mantığını anladığımıza göre sorumuzu çözmeye başlayalım.

 

Java Kodlarımız:

 

 

package uygulamalar;

import java.util.Scanner;

public class üçgenoluşturma {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        Scanner klavye=new Scanner( System.in);
        System.out.println("Bir Sayı Giriniz :");
        int n=klavye.nextInt();
        
        
        
        for(int i=0;i<=n-1;i++){
            for(int j=0;j<=(n-i);j++){
                
                System.out.print(" ");
            }
            
            for(int k=1;k<=(2*i+1);k++){
                System.out.print("*");
            }
            System.out.println(" ");
        }
        
        
        
    }

}

 

    • İlk adımımızda Scanner komutu ile klavyeden veri girişini sağlamış oluyoruz.

 

                  Scanner klavye=new Scanner( System.in);
                  System.out.println(“Bir Sayı Giriniz :”); 

                  int n=klavye. nextInt();

 

 

    • Boşluklar için iç içe 2 for döngüsünü açıyoruz.

 

                for(int i=0;i<=n-1; i++){           
                for(int j=0;j<=n-i; j++){               
                System.out.print(” “);

 

  1.  For döngümüz boşlukların hangi satırda olacağını belirlerken, 2.for döngümüz boşlukların satırdaki sıralarını belirliyor. Bunu bir dizi gibi düşünürsek dizi[i][j]= ” ” olarak atıyor. Yani bu adımımızda sol kısımdaki boşluğu oluşturmuş olduk.

 

  • İkinci adımımızda * işaretlerinin hangi yerlerde olması gerektiğini kodlayacağız. Buradaki kuralımızı 2*i+1 şeklinde belirlemiştik. Buna göre;     

                for(int k=1;k<=(2i+1);k++){
                System.out.print(“
“); 

 

Bu şekilde kodlamamızı tamamlamış olduk. Programımızı çalıştırdığımızda çeşitli çıktılar elde edebiliyoruz.

 

 

Üçgen oluşturma algoritmasını ve Java kodlarını bu şekilde öğrenmiş olduk. Bir sonraki yazımızda görüşmek üzere, iyi çalışmalar 🙂

 

 

 

 

Advertisement

3 responses to “Java Soru Çözümleri 13 – Üçgen Oluşturma”

  1. […] Java Soru Çözümleri 13 – Üçgen Oluşturma […]

    Like

  2. […] Bugün, bir önceki yazımıza benzer bir algoritma sorusuyla devam edeceğiz. Diğer sorumuzda üçgen oluşturmayı öğrenmiştik, bu yazımızda da ters üçgen oluşturmayı […]

    Like

  3. […] önce üçgen oluşturma sorusu çözmüştük. Ama bu üçgeni yıldızlarla oluşturabilmiştik. Şimdi ise […]

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: