Android Dünyası

101 Android 101 Eğitimi

Algoritmaya Giriş

Yazar: Geleceği Yazanlar Ekibi algoritmaya giriş

 

Herhangi bir programlama dilini öğrenmeye başlamadan önce algoritma kavramını anlamanın çok önemli olduğunu düşünüyoruz. Algoritma, belirli bir işi yapmak için izlenen yol anlamındadır. Matematik ve bilgisayar programlamada sıkça kullanılır. Programlamaya başlamadan önce problemin çözümü bulunmalı ve çözüme giden yollar oluşturularak en verimli şekilde sonuçlandırılmalıdır. Çözüme giden bu yolların bulunması içinde sistematik düşüncenin geliştirilmesi gerekir. Algoritma oluşturulurken dikkat edilmesi gereken en önemli nokta ise, hesaplanabilir tüm ihtimalleri ve onların çözüm yollarını bulabilmektir. Bir çözüm yolundaki tüm ayrımlar düşünülmeli bu durumlarda ne yapılacağı belirlenmelidir. Teorik olarak anlatıldığında anlaşılması zor bir kavram olan algoritmayı örneklerle açıklamaya çalışalım.

 

Örnek Durum:

İlk örneğimiz bilgisayarı çalıştırıp, gelecegiyazanlar portalına girmek olsun. Bunun için yapılması gereken ilk şey bilgisayarın açık olup olmadığı durumuna bakmaktır. Aşağıda çözümün flowchartını (işleyiş şemasını) görmektesiniz.

input merkezsatırı; //kullanıcıdan merkez satırdaki * sayısı alınır.
int satırsayısı = merkezsatırı*2-1;
int satırdakiyıldızsayısı=1; //ilk satırımızda bir * şeklinde başlayacaktır.
int satırdakiboşluksayısı = merkezsatırı - satırdakiyıldızsayısı
while (satırsayısı>0) {
        while (satırdakiyıldızsayısı <= merkezsatırı) {
                while (satırdakiboşluksayısı >= 0) {
                        print('' ''); //boşluk bastır
                }
                print(''x''); //x ve boşluk bastır
                if (satırdakiyıldızsayısı < merkezsatırı)
                        satırdakiyıldızsayısı++ ;
                else
                        satırdakiyıldızsayısı-- ;
                }
        print(''\n''); //yeni satıra gecme
        satırsatırsayısı-- ;
        satirdakiboşluksayısı = merkezsatırı - satırdakiyıldızsayısı;
}

 

 

Kullanıcı merkez satırı 5 olarak belirlerse, çıkan şekil aşağıdaki gibi olacaktır.

    *
   * *
  * * *
* * * *
* * * * *
* * * *
  * * *
   * *
    *