6 Aralık 2015 Pazar

Git komutları

Git bash ekranını kullanarak versiyon kotrolü yapacaksanız bu komutları kullanacaksınız.

Kullanıcı adınızı ve email bilgisi değişkliği için
$ git config --global user.name "kullanıcı adınız"
$ git config --global user.email "mail@example.com"

Versiyon kontrolü altına almak için 
$ git init

Local bir repository(depo) ancak iki şekilde oluşturulabilir
$ git init  (yada altaki komut ile remote depoyu indirerek )
$ git clone https://kullanıcıadı:şifre@github.com/username/repository.git

Remote repository'ler de iki yöntem ile oluşturulabilir
$ git clone komutunu --bare parametresi ile kullanarak remote bir repoository'ye klonlayabilirsiniz
$ git init komutunu yine --bare (bos bir remote depo oluştrulmuş olur.)


Staging Area ya eklemek için
$ git add -A

Bir dosyayı staging areaya eklemek için
$ git add baslik_2.md

Bir dosyayı bir sonraki committe yer almasını engellemek için
$ git rm baslik_2.md

Yaptığınız değişiklikleri listelemek için
$ git status 


Commit oluşturmak için
$ git commit -m "İlk commit işlemimizi yaptık"

Commitlerimizin bilgilerini öğrenmek için
$ git log    (ayrıntı için -p kullanın)

Son commiti geri almak için
$ git commit --amend (sadece baslığı değişecek ise -m ile yapılmalıdır)

Bir dosyayı değişiklik yaptıktan sonra son commite geri almak için
$ git checkout -- dosya1.md  (-- kullanılır)

Tüm dosyaları değişiklik yaptıktan sonra son commite geri almak için
$ git reset --hard ornek  (yapılan degisiklikler silinecek)

Bir değişikliği (commiti) geri almak için
$ git revert 28eC77 (geri alınacak değişikliğin hash değerinin ilk altı basamağı)


Branchleri(dallanmaları) görmek için 
$ git branch (ayrıntılı bilgi için -v kullanın)

Yeni bir branch(dallanma) için
$ git branch yeniBranch

Bir branchi (dallanmayı) aktif hale getirmek için
$ git checkout master

Bir branchi (dallanmayı) bilgisayardan silmek için
$ git branch -d

Remotedeki bir branchi (dalalnmayı) silmek için
$ git branch -dr yeniBranch (bu sadece bilgisayardaki remote alanındakini sildi)
$ git push origin yeniOzellik  (internettekinide silmek için bu değişikliği yayınlamalısınız)


Yarım kalan değişkilikleri kayıt altına almak için
$ git stash

Stash'deki kayıtları görmek için
$ git stash list

Stash'den kayıt çıkarmak için
$ git stash pop  (kayıt verileri alınır ve stash'den silinir)

Stash'den istediğin veriyi getirmek için
$ git stash apply stash@{1}  (veri getirildi ancak stash'den silinmedi)

Stash'den veri silmek için
$ git stash drop stash@{1} 


Merge işlemi yapmak için
$ git checkout master (master branche yenilikleri eklemek için aktif ettik)
$ git merge yeniBrach  (yeniBrach deki eklenecek yenilikleri merge komutu ile uyguladık) 

Remote depodaki bilgileri bilgisayara indirmek için
$ git fetch ornek (sadece indirir değişklik yapmak bu size kalmıştır)

Remote depodaki bilgileri bilgisayara indirmek için ve fetchden farklı olarak entegre etmek için
$ git pull ornek

Remoteda bulunan projeyi locale alıp local ile remote arası ilişki kurmak için
$ git checkout --track ornek

Localdeki değişiklikleri remote taşımak için
$ git push -u origin yeniOzellik

29 Kasım 2015 Pazar

Java Mükemmel Sayı

    Bu yazımızda mükemmel sayıları bulan program kodunu yazacağız. Mükemmel sayılar kendisi hariç pozitif tam bölenlerinin toplamı kendisine eşit olan sayıdır.
    Örnek vermek gerekirse 6 bir mükemmel sayıdır. 6 sayısının pozitif çarpanları 1x2x3 dür. Bu çarpanların toplamı kendisine eşittir.
( 1+2+3=6 )

 public static void main(String[] args) { 
  Scanner cr = new Scanner(System.in);
   
  int sayi;
  System.out.println("Bir sayi giriniz : ");
  sayi = cr.nextInt();  
  
  //kontrol edilecek sayıyı fonksiyonumuza yolluyoruz 
  if(mukemmelSayiBul(sayi)){
   System.out.println(sayi+" sayısı mükemmel sayıdır.");
  }else{
   System.out.println(sayi+" sayısı mükemmel sayı değildir.");
  }   
  
 }
 
 public static boolean mukemmelSayiBul(int sayi) {
  
  // kendisinden küçük tüm sayılara bölüyoruz ve tam bölen sayıları topluyoruz
  int toplam = 0;
  for (int i = 1; i < sayi; i++) {
   if (sayi % i == 0) {
    toplam += i;
   }
  }
  //toplam, sayımıza eşit ise mükemmel sayı olmuş oluyor 
  if (toplam == sayi) {
   return true;
  } else {
   return false;
  }
 }


Kodlara ulaşmak için github adresine gidin

Java Standart Sapma

    Bu yazımızda istatistik bilim dallarında kullanılan standart sapma formülünü koda dökeceğiz.   Standart sapma hakkında ayrıntılı bilgi almak isteyenler vikipedi sayfasından inceleyebilir.


  Scanner cr = new Scanner(System.in);

  int diziBoyutu;
  double ortalama = 0.0, ortToplam = 0.0, toplam = 0.0, k = 0.0;

  System.out.println("Kaç adet sayi gireceğinizi yazınız: ");
  diziBoyutu = cr.nextInt();

  int dizi[] = new int[diziBoyutu];

  //sayıları diziye aktarıyoruz
  System.out.println("Sayıları giriniz: ");
  for (int i = 0; i < diziBoyutu; i++) {
   System.out.println((i + 1) + ". sayıyı giriniz: ");
   dizi[i] = cr.nextInt();
  }

  // ortalamayı hesaplatıyoruz
  for (int j = 0; j < diziBoyutu; j++) {
   ortToplam = ortToplam + dizi[j];

  }
  ortalama = ortToplam / diziBoyutu;

  // dizinin elemanlarının ortalamayla olan farkının karesi alınıyor
  for (int s = 0; s < diziBoyutu; s++) {
   double r = (double) Math.pow((dizi[s] - ortalama), 2);
   toplam = toplam + r;
  }
  
  k = (toplam / (diziBoyutu));
  System.out.print("Standart sapma: ");
  System.out.println(Math.sqrt(k));



Kodlara ulaşmak için github adresine gidin

28 Kasım 2015 Cumartesi

Java İkinci Derece Denklemin Kökünü Bulma

    Bu yazımızda ikinci derece denklemlerin kökünü bulan program yazacağız.
    Matematikten de bildiğiniz gibi ikinici derece denklemler ax2 + bx + c şeklinde yazılır.Bu denklemi diskriminant yardımı ile çözeceğiz. Diskriminant formülümüz b2 - 4ac idi.

    Diskriminantımız sıfırdan büyük ise denklemin iki gerçek kökü vardır.
    Diskriminantımız sıfırdan küçük  ise gerçek kök yoktur, karmaşık kök vardır.
    Diskriminantımız sıfıra eşit ise tek bir gerçek kök denir, kimi zaman buna daburut da denir.

    Eğer tek gerçek kök var ise kökümüz = -b / 2a ya eşittir.
    Eğer gerçek kök yok karmaşık kök var ise köklerimiz = -b (+ veya - ) (kök içinde diskriminant) / 2a dır.

    Matematiksel olarak formullerimizi oluşturduk artık bunu koda dökmek kaldı.
 
  Scanner sc = new Scanner(System.in);

  System.out.println("(ax²+bx+c) olmak üzere a, b ve c sıralanacak şekilde sayıları ekrana giriniz.");
  System.out.println("a sayısını giriniz.");
  double a = sc.nextInt();

  System.out.println("b sayısını giriniz.");
  double b = sc.nextInt();

  System.out.println("c sayısını giriniz.");
  double c = sc.nextInt();

  double delta = (b * b) - (4 * a * c);

  if (delta > 0) {
   double x1 = ((-1 * b) - Math.sqrt(delta)) / (2 * a);
   double x2 = ((-1 * b) + Math.sqrt(delta)) / (2 * a);
   System.out.println("x1=  " + x1 + "  x2=  " + x2);
  }

  if (delta < 0) {
   System.out.println("Denklemin Gerçel Kökü Yoktur.");
  }

  if (delta == 0) {
   double x = (-1 * b) / (2 * a);
   System.out.println("Çakışık kökü var x1= x2=  " + x);
  }

Kodlara ulaşmak için github adresine gidin

Java Sayi Tahmin Oyunu

    Bu yazımda basit bir sayi tahmin oyunu programı yazacağız. Oyunu basit olarak anlatmak gerekirse ilk olarak kullanıcıdan tahmin için kaç hakkı olmasını istediğini alıyoruz. Sonra rastgele 0-100 arası bir sayı üretiyoruz. Bir döngünün içinde kullanıcıdan aldığımız sayı ile rastgele oluşturulan sayımızı karşılaştırarak kulanıcıyı yönlendiriyoruz.


  int bulunmasiGerekenSayi;
  int tahminSayisi, tahminEtmeSayaci = 1;
  Scanner okuyucu = new Scanner(System.in);
  Random rnd = new Random();

  //random olarak 0-100 arası sayı üretip rastSayi adlı değişkenimize atıyoruz
  bulunmasiGerekenSayi = rnd.nextInt(100);

  System.out.println("Sayıyı bulmak için kaç tahmin hakkınız olsun ? :");
  tahminSayisi = okuyucu.nextInt();

  int tahminEdilenSayi = 0;
  boolean oyunaDevam = true;// oyunun devam edip etmemesini kontrol için kullanılacak

  System.out.println("0-100 arası bir sayi giriniz : ");

  while (oyunaDevam) {

   //okuyucudan bir sayı tahmin etmesini istiyoruz
   tahminEdilenSayi = okuyucu.nextInt();

   //tahmin edilen sayi rastgele oluşturulan sayıya eşitse tebrik edip döngüden çıkıyoruz
   if (tahminEdilenSayi == bulunmasiGerekenSayi) {
    System.out.println("Tebrikler sayıyı " + tahminEtmeSayaci + ". tahminde buldunuz ... ");
    oyunaDevam = false;
    //yapmış olduğumuz tahmin sayisi bulmak istediğimmiz tahmin sayısından fazla ise oyunu bitiriyoruz
   } else if (tahminEtmeSayaci > tahminSayisi - 1) {
    System.out.println("Oyunu kaybettiniz, bulmanız gereken sayı " + bulunmasiGerekenSayi + " idi.");
    oyunaDevam = false;
   }//tahmin edilen sayı ile rastgele sayı karşılaştırılıp duruma göre yeniden sayı istiyoruz
   else if (tahminEdilenSayi > bulunmasiGerekenSayi) {
    System.out.println("Daha küçük bir sayı giriniz :");
   } else if (tahminEdilenSayi < bulunmasiGerekenSayi) {
    System.out.println("Daha büyük bir sayı giriniz :");
   }

   tahminEtmeSayaci++;
  }
 }
Kodlara ulaşmak için github adresine gidin

Java Alt Küme Bulma Programı

     Bu yazımızda bir kümenin tüm alt kümelerini bulan bir program yazacağız.Programımızın algoritması dizimizin tüm elemanlarını bulunduğumuz satırın ikiye modunu alarak bulmaya dayanmaktadır.


  //Kumemizin eleman sayısını alıyoruz 
  Scanner okuyucu = new Scanner(System.in);
  System.out.print("Kumenin eleman sayısını giriniz : ");
  int elemanSayisi = okuyucu.nextInt();

  //Kumemizin elemanlaarını kume isimli diziye atıyoruz
  int kume[] = new int[elemanSayisi];
  for (int i = 0; i < elemanSayisi; i++) {
   System.out.print((i + 1) + ". Eleman: ");
   kume[i] = okuyucu.nextInt();
  }

  //Kümemizi yazdırıyoruz
  System.out.print("{");
  for (int i = 0; i < elemanSayisi; i++) {
   System.out.print(kume[i]);
   if (i != elemanSayisi - 1) {
    System.out.print(",");
   }
  }
  System.out.print("}");
  System.out.println(" kümesinin alt kümeleri ");

  //Alt kümelerimizin sayısını bulduruyoruz ve altküme dizimizi oluşturuyoruz
  int altKumeSayisi = (int) Math.pow(2, (elemanSayisi));
  String altKumeler[] = new String[altKumeSayisi];
  String altKume = "";

  int sayi = 0;
  int sayac = 0;
  for (int i = 0; i < altKumeSayisi; i++) {
   sayi = i;
   altKume = "{";
   sayac = 0;

   for (int j = 0; j < elemanSayisi; j++) {
    //gelinen sayının 2 ye modu alınır böylece binary sistemde varlığı kontrol edilir
    if (sayi % 2 == 1) {
     if (sayac == 0) {
      altKume += kume[j];
     } else {  //alt kümelerde 2 ve daha fazla eleman varsa yazdırmak için kullanılır
      altKume += "," + kume[j];
     }
     sayac++;
    }
    //sayı 2 den küçük ise artık kontrole gerek kalmaz döngüden çıkılır
    if (sayi == 1) {
     break;
    }
    // burada bilinen decimal sayıyı binary' e çevirme işlemi yapılır(2 ye bölme)
    if (sayi >= 2) {
     sayi = sayi / 2;
    }
   }
   //Bulunan elemanlar bir string te tutulur ve bu string de bir diziye eklenir
   altKume += "}";
   altKumeler[i] = altKume;
   altKume = "{";
  }

  String temp = "";   // Yer değiştirmede kullanılacak geçici değişken
  // Her karşılaştırmadan sonra yeniden kaldığımız yerden devam etmemizi sağlayan döngü
  for (int i = 1; i < altKumeSayisi; i++) {
   // Dizinin ardışık elamanlarını karşılaştırmak için kullandığımız döngü
   for (int j = 0; j < altKumeSayisi - i; j++) {
    //Önce gelen elaman bir sonrakinden büyükse(karakter sayısı) ikisi yer değiştiriyor
    if (altKumeler[j].length() > altKumeler[j + 1].length()) {
     temp = altKumeler[j];
     altKumeler[j] = altKumeler[j + 1];
     altKumeler[j + 1] = temp;
    }
   }
  }

  //Alt kümeleri yazdır
  for (int i = 0; i < altKumeSayisi; i++) {
   System.out.println((i + 1) + ". " + altKumeler[i]);
  }

Kodlara ulaşmak için github adresine gidin

14 Kasım 2015 Cumartesi

Github Permission Denied (publickey) hatası

  Bir karar aldım ve karşılaştığım sorunların bulduğum çözümlerini yeniden internette aramak yerine blogumda yazarak hem başkalarına hemde kendime faydam dokunur umuduyla kayıt altına almaya karar verdim. 

 Linux mint cinnamon 17.2 sürümünde git cola adlı program ile github adresime bağlanıp depoda (repository) bulunan verileri klonlayarak bilgisayarıma indirdim. Üzerinde değişiklikler yaptıktan sonra depoyu güncellemek için push komutunu kullandım. Tüm sorunlar bundan sonra başladı.

   Verilen hata mesajı "git clone returned exit code 128" diye birşeydi.İnternette biraz araştırma yaptım. Sorun bilgisayarımın github adresime bağlantılı olmadığını öğrendim. Daha önce win8.1 de iken bu hata ile karşılaşmamıştım.

   Sorunun çözümünü öğrenince nedenini anladım win8.1 de github'ın kendi programını indirdiğimizden program otomatik olarak aradaki bağlantıyı kuruyordu. Linux da ise bu işlemleri bizim yapmamız gerekiyor.

  Sorunun kaynağı internette veri alıp-gönderirken şifrelemek gerekir.Bunun için ssh adında bir yöntem kullanılır. Git cola hesap bilgilerini vermemize rağmen bu bağlantıyı otomatik gerçekleştiremez. Bu bağalantıyı Linux terminal ekranından bizim yapmamız gerekiyor.

Çözümü github yardım bölümünde buldum.

Burada ingilizce olduğu için ben kendimce çevirip yazmaya çalıştım.
Bu işi adım adım gerçekleştirelim.

1.Adım: Ssh var mı kontrol edelim.
Terminalde şu komutları girniz.


$ ls -al ~/.ssh
 //Varsa #, .ssh dizinindeki dosyaları listeler

Eğer ssh anahtarımız var ise adı şunlardan biridir.
  • id_dsa.pub
  • id_ecdsa.pub
  • id_ed25519.pub
  • id_rsa.pub
Eğer ssh anahtarımız varsa direk adım 3'e geçebilrisiniz yoksa Adım 2 ile devam edip ssh anahtarı oluşturunuz.

2.Adım: Ssh anahtarı oluşturma

$ ssh-keygen -t rsa -b 4096 -C "email@example.com"
 # Etiket olarak verilen e-posta kullanarak, yeni bir ssh anahtarı oluşturur

Varsayılan ayarları tutmak için bir kez entere basın.İsterseniz dizin adı girebilirsiniz. Önerilen direk devam etmektir. yani varsayılan olarak (/Users/you/.ssh/id_rsa): buraya anahtar oluşturulur.

 Sonrasında parola girmemizi isteyecektir.Parola girin.

Bir parola girdikten sonra, sizin SSH anahtar, parmak izi, veya id verilecektir. Bu gibi görünecektir:

 # Sizin kimlik kaydedilen / Users / sen /.ssh/id_rsa.
 # Sizin genel anahtar kaydedilen / Users / sen /.ssh/id_rsa.pub.
 # Anahtar parmak izi:
 # 01: 0f: f4: 3b: ca: 85: d6: 17: a1: 7d: f0: 68: 9d: f0: a2: db email@example.com

Anahtarımızı oluşturduk şimdi bunu ssh-agent'e eklememiz gerekiyor.

3.Adım: Ssh-agent anahtar ekleme

 # Arka planda ssh-agent başlatmak
 $ Eval "$ (ssh-agent -s)"
 # Ajan 59566 pid
 
$ ssh-add ~ / .ssh / id_rsa
# burada anahtarı ekliyoruz dikkat edilmesi gereken bir yer var
#  "id_rsa adı" yukarıda ki adlardan birisi olabilirdi.

4.Adım: Hesabımıza ssh-anahtarını eklemek

Panoya SSH anahtarını kopyalayın. Anahtar da adlandırılmış olabilir aklınızda tutun id_dsa.pub id_ecdsa.pub veya id_ed25519.pub aşağıdaki dosya adını değiştirmek gerekir, bu durumda:

$ sudo xclip install apt-get
 # İndirme ve xclip yükler.  Eğer `apt-get` yoksa, sen (yum`` gibi) başka bir yükleyici kullanmanız gerekebilir

 $ xclip -Sel klip <~/.ssh/id_rsa.pub
 #Panoya kopyalar # id_rsa.pub dosyasının içeriğini

    • Herhangi bir sayfanın sağ üst köşesinde, profil fotoğrafını tıklatın, ardından Ayarlar'ı tıklatın.

    Kullanıcı çubuğundaki simgesi Ayarlar
    • Kullanıcı ayarlarını kenar çubuğunda, SSH anahtarlarını tıklatın.

     SSH anahtarları

    • SSH anahtarını ekleyin tıklatın.

    SSH Key düğmesi
    • "Anahtar" alanına anahtar yapıştırın.
    • Anahtar Ekle düğmesini tıklatın.
    • GitHub şifrenizi girerek işlemi onaylayın. 
     Muhtemelen sorun çözülmüş olacaktır. Verdiğim sitenin sonunda bir hatadan bahsedilmekte ben karşılaşmadağım  için yapmadım.Zaten ordada başka bir adrese yönlendirmiş çözüm için.

    Böylelikle bir sorun daha çözüme kavuşmuş oldu. Umarım yararlı olmuştur. 

    Java Harf Üçgeni

       Bu örneğimizde harfleri kullanarak üçgen oluşturacağız. Oluşturduğumuz bu üçgenin her bir satırı palindromik olmuş olacak. Palindrom, tersten okunuşu da aynı olan cümle, sözcük ve sayılara denilmektedir.Örneğin 101,12321,aba,abcba vb. gibidir.
    Oluşturacağımız şekil böyle olacaktır.
    
    0          
    1         A
    2        ABA
    3       ABCBA
    4      ABCDCBA
    5     ABCDEDCBA
    6    ABCDEFEDCBA
    7   ABCDEFGFEDCBA
    8  ABCDEFGHGFEDCBA
    9 ABCDEFGHIHGFEDCBA 

    Şeklimizin java kodları:

    
    int i, satirSayisi = 10;
    char harf;   // harfleri kullanacağımızdan harf adında char tipinde değişken oluşturuyoruz  
      
    //satırlarımızı oluşturduğumuz for blogumuz
    for (i = 0; i < satirSayisi; i++) {
       
    harf = 'A';   //for her tekrar yaptıgında harf değişkenimize A değerini atıyoruz
    System.out.print((i%10)+" ");   // hangi satırda olduğumuzu göstermek için kullandık
       
    //üçgen şekli elde edebilmemiz için sol tarafda bosluk olusturuyoruz
    for (int j = 0; j < satirSayisi - 1 - i; j++) {
        System.out.print(" ");
    }
    //şimdide harflerimizi yazıdırıyoruz burası A'dan Z'ye kadar artarak giden kısım
    for (int j = 0; j < i ; j++) {   //bulunduğumuz satır kadar harf yazdırıyoruz
    
      System.out.print(harf);
      harf++;
    if (harf >= 'Z') //harf değerimiz eğer Z olursa A ya geri dönüyoruz
     harf = 'A';
    }
       
     harf--; //geri dönüş yapabilmemiz için harf değerini 1 azalttık
       
    //burası Z'den A'ya kadar azalarak giden kısım
    for (int j = 1; j < i ; j++) {  //geri giderken 1 eksik yazmamız gerektiğinden j'yi 1 ile başlattık
     harf--;
     System.out.print(harf);    
      if (harf <= 'A')  //harf değerimiz eğer A olursa Z ye geri dönüyoruz
     harf = 'Z';
      }
     System.out.print("\n");
    
    }
    


    Kodlara ulaşmak için github adresine gidin

    24 Ekim 2015 Cumartesi

    Java Yıldızlarla Şekil Çizme 3

    Bugün yıldızlarla özel bir şekil çizeceğiz.

    
    *-----------------*
     \ ************* / 
      \ *         * /
       \ *       * /
        \ *     * /
         \ *   * /
          \ * * /
           \ * /
            \ /
             *
    

    Bu şekli çizen kodları yazmaya çalışacağız. Şeklimizi anlatacak olursak şeklimizin bazı yerleri sabittir.        Örneğin ilk satır ve son satır sabittir. Şeklimizi çizmek için 1'den 6'ya kadar bir sayı verildiğinde oluşan şekiller farklıdır. 6 dan sonra asıl şeklimiz oluşmaya başlamaktadır.

    Şeklimizi çizebilmek için bazı satırların oranlarını bulmamız gerekir.
    
    // ilk satırın tire sayısını bulma
    for (int s = 0; s < sayi - 2; s++) {
      tireSayisi = tireSayisi + 2;
    }
    //ikinci satırın yıldız sayısını bulma
    for (int k = 0; k < sayi - 4; k++) {
      yildizSayisi = yildizSayisi + 2;
    }
    //orta alandaki bosluk sayısını bulma
    for (int n = 0; n < sayi - 6; n++) {
      boslukSayisi = boslukSayisi + 2;
    }
    


    Bu oranları bulduktan sonra şimdi ilk satırımızı oluşturalım.

    
    // ilk satırı oluşturuyoruz
    System.out.print("*");
    for (int j = 0; j < tireSayisi; j++) {
    System.out.print("-"); //bulduğumuz tire sayısı kadar tire yazdırıyoruz
    }
    System.out.print("*");
    
    System.out.println();// ikinci satıra geçmek için kullandık
    

    Daha sonra son satırımızı ve sondan önceki satırı oluşturalım çünkü buralar sabit kısımlar.

    
     if (sayi > 2) {
     // sayi 3 veya 3'den büyük ise burası çalışacak ve en altın bir üsütünü oluşturacak
       for (int i = 0; i < 1; i++) {
           for (int j = 0; j < sayi - 2; j++) {
            System.out.print(" ");
           }
          System.out.print("\\");
          System.out.print(" ");
          System.out.print("/");
    
       }
        System.out.println();
     }
                    
      //son satırı çiziyoruz
      for (int r = 0; r < sayi-1; r++) {
       System.out.print(" ");
      }
    System.out.print("*");
    

    Geri kalan satırlarımız değişkenliği oluşturan satırlar.

    
    if (sayi > 3) {// sayi 4 veya 4'den büyük ise burası çalışacak
        
         System.out.print(" \\ ");
         for (int j = 0; j < yildizSayisi; j++) {
          System.out.print("*");//ikinci satırı oluşturuyoruz
         }
         System.out.print(" / ");
                                            
        System.out.println();// alt satıra geçmek için kullandık
    
        //en önemli yer burası çünkü 6 ve 6'dan sonra orta kısımı burası oluşturacak                                
        for (int m = 0; m < sayi - 5; m++) { //6 dan sonraki her satır için ortayı genişletiyoruz
    
         for (int j = 0; j < m + 2; j++) {
          System.out.print(" "); 
         }
         System.out.print("\\");
         System.out.print(" ");
         System.out.print("*");
         for (int j = boslukSayisi; j > 0; j--) {
          System.out.print(" ");  //ortadaki boslukları oluşturuyoruz
         }
         System.out.print("*");
         System.out.print(" ");
         System.out.print("/");
         System.out.println();
         boslukSayisi = boslukSayisi - 2;
        }
    
       }
       if (sayi > 4) {// sayi 5 veya 5'den büyük ise burası çalışacak
        
        for (int i = 0; i < 1; i++) {
         for (int j = 0; j < sayi - 3; j++) {
          System.out.print(" ");
         }
         System.out.print("\\ ");
         System.out.print("*");
         System.out.print(" /");
    
        }
        System.out.println();
    
       }
    Kodlara ulaşmak için github adresine gidin

    22 Ekim 2015 Perşembe

    Java Yıldızlarla Şekil Çizme 2

    Java yıldızlarla şekil çizme 2. örnekler ile devam ediyoruz.

    Şimdi yaptıklarımızı biraz anlatacak olursak ilk örneklerde parça parça yapmış yaptığımız şekilleri birleştirerek yeni şekiller üretiyoruz.

    İlk örneğimiz bu şekili çıkaran kodlar

    -------------------Düz üçgen şekli-----------------------
    0                   *
    1                 ***
    2               *****
    3             *******
    4           *********
    5         ***********
    6       *************
    7     ***************
    8   *****************
    9 *******************

    Kodları görünce anlayacaksınız ki kodlar bir önceki örneklerin birleştirilmiş halidir.


    ikinci örneğimiz bu şekili çıkaran kodlar

    -------------------Ters üçgen şekli-----------------------
    0 *******************
    1   *****************
    2     ***************
    3       *************
    4         ***********
    5           *********
    6             *******
    7               *****
    8                 ***
    9                   *


    ve son örneğimiz baklava şeklini çıkaran kodlar
    -------------------Baklava şekli-----------------------
    0                   *
    1                 ***
    2               *****
    3             *******
    4           *********
    5         ***********
    6       *************
    7     ***************
    8   *****************
    9 *******************
    0 *******************
    1   *****************
    2     ***************
    3       *************
    4         ***********
    5           *********
    6             *******
    7               *****
    8                 ***
    9                   *

    üst kısmı çizen kodlar ->

    alt kısmı çizen kodlar ->

    Kodlara ulaşmak için github adresine gidin

    18 Ekim 2015 Pazar

    Java Yıldızlarla Şekil Çizme 1


    Java yıldızlarla şekil çizme 1. örnekler ile başlıyoruz.
    İlk örneklerde yıldızlarla for yapısını kullanarak parça parça üçgenler çiziyoruz.Daha sonraki örneklerde bu parçalı üçgenleri birleştirerek şekiller üreteceğiz.



    Kodlara ulaşmak için github adresine gidin