Matematiksel olarak gösterilemeyen hiçbir araştırma gerçek bilim sayılamaz.
Hârizmî
(Sıfırı bulan ve İlk algoritmayı sunan kişi.)Algoritma Ve Akış Şemaları
Bir sorunu yada bir problemi çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı mantıksal adımların tümüne algoritma denir. Algoritma bir sorunun çözümü için izlenecek yolun tanımıdır. Kısaca algoritma mevcut bilgilerden istenilenlere erişme yöntemidir. Programlamanın en önemli kısmı problemin çözümü için algoritma hazırlayabilmek, geliştirmektir.
Algoritmalar, birçok farklı alanda başarıya ulaşmak için kullanılabilir. Örneğin, finansal analiz, makine öğrenimi, robotik, tıp, çeşitli endüstriyel pek çok alanda algoritmalar kullanılır. Pek çok alanda kullanılan algoritmalar ile belirli bir amaca ulaşmak için veri işleme, hesaplama, veri analizi ve karar verme gibi işlemleri gerçekleştirilebilir.
Algoritma ve programlama, birbirleriyle sıkı bir ilişkiye sahip olan iki kavramdır. Algoritma; daha basitçe belirli bir problemin çözümü için adımları tanımlayan bir plan veya yöntem olarak tanımlanabilir. Programlama ise, bu algoritmaların bilgisayarlar tarafından anlaşılabilen kodlara dönüştürülmesi işleminden başka birşey değildir.
Bilgisayar programlama işlemi için çeşitli programlama dilleri geliştirilmiştir. Programlama dilleri kabaca insanların bilgisayarlara hangi adımları izlemesi gerektiğini anlatabilmelerini sağlar. Bu adımlar daha sonra bilgisayarda çalıştırılarak belirli bir problemin çözümü gerçekleştirilir.
Algoritma ve programlama birbirleriyle sıkı bir ilişkiye sahip olduğundan, iyi bir programcı olmak için hem iyi bir algoritma tasarlayabilme becerisi hem de programlama dillerini anlayabilme becerisi gereklidir. İyi bir algoritma tasarımı, programlama sürecini daha verimli hale getirir ve sonuç olarak daha az hata ile daha yüksek kaliteli yazılım üretilebilir.
Örneğin; kimyasal bir problemi, bilgisayar programına dönüştürebilmek için; Öncelikle problemin nasıl çözülmesi gerektiği ile ilgili algoritmanın doğru şekilde hazırlanması gerekir. Bu da ancak iyi bir kimyasal süreç analizi ile yapılabilir.
Hazırlanmış bir algoritmada aşağıdaki özelliklere dikkat edilmelidir.
Her adım son derece belirleyici olmalıdır. Hiç bir şey şansa bağlı olmamalıdır.
Belirli bir sayıda adım sonunda algoritma sonlanmalıdır.
Algoritmalar karşılaşılabilecek tüm ihtimalleri ele alabilecek kadar genel olmalıdır.
Akış Diyagramı (Akış Şeması) : Bir algoritmanın daha görsel gösterimidir. Çizgiler, Dörtgen, daire vb. geometrik şekillerle algoritmanın gösterilmesini sağlar. Akış şemalarının algoritmadan farkı, adımların simgeler şeklinde kutular içine yazılmış olması ve adımlar arasındaki ilişkilerin ve yönünün oklar ile gösterilmesidir.
Tablo 1 : Akış Diyagramlarında kullanılan semboller.
Sembol Anlamı Sembol Anlamı Başla / Bitir Genel Girdi-Çıktı El ile Girdi - Klavye Genel İşlem Denetim Karar Yazıcı Çıktısı Döngü Manyetik Disk Yordam Çağırma Akış Yönü Bağlaç Sayfa Bağlacı Aşağıda iki farklı Algoritma Şeması örneği Verilmiştir.
(A)
(B)Şekil 1 : (B) Bir asit çözeltisinin hazırlanması için kullanılan algoritma (B) Polimer moleküllerinin hazırlanması için kullanılan algortima şeması örnekleri görülmektedir.
Kaynaklar |