Herhangi bir programlama dilini öğrenmeye başlamadan önce algoritma mantığını anlamak çok önemlidir. Algoritma, belirli bir işi yapmak için izlenen yol anlamına gelmektedir. 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çin sistematik düşüncenin geliştirilmesi gerekmektedir. 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 algoritma başlangıç için akış diyagramlarıyla anlatılmaktadır.
Akış Diyagramları:
En çok kullanılan akış diyagramları aşağıdaki gibidir:
Örnek 1
Ekrana 10 defa Geleceği Yazanlar yazan algoritmanın akış diyagramını çizelim
Ö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.
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*