Warning: include(../../../head.php): failed to open stream: No such file or directory in /usr/local/www/lisans/dersler/BilisimTeknolojileri/AlgoritmaVeAkisSemalari.php on line 4

Warning: include(): Failed opening '../../../head.php' for inclusion (include_path='.:/usr/local/share/pear') in /usr/local/www/lisans/dersler/BilisimTeknolojileri/AlgoritmaVeAkisSemalari.php on line 4
Taner TANRISEVER Ana Sayfasi
Warning: include(menu.php): failed to open stream: No such file or directory in /usr/local/www/lisans/dersler/BilisimTeknolojileri/AlgoritmaVeAkisSemalari.php on line 19

Warning: include(): Failed opening 'menu.php' for inclusion (include_path='.:/usr/local/share/pear') in /usr/local/www/lisans/dersler/BilisimTeknolojileri/AlgoritmaVeAkisSemalari.php on line 19


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