Ziyaretiniz için teşekkürler!

Doğru kişiyi buldunuz fakat.. :) Burası Serkan Çay'ın eskiden kullandığı blog sitesidir.

Yeni blog adresi: SERKANCAY.COM

Launching
launchpad

4 Ocak 2014 Cumartesi

2.Algoritma Geliştirme

Her şeyin bir mantık çerçevesinde geliştiğini gerçek hayattan biliyoruz. Algoritmaya en iyi örnek yarınımız hakkında yaptığımız planlar: Sabah 7.30 da uyanacağım. Kahvaltımı yapacağım. 8.00 da dişlerimi fırçalayacağım. 9.00 da okulda olacağım.. Veya daha iyi bir örnek yemek tarifidir. Yemek yaparken her şeyin bir sırası vardır, belli bir miktarı vardır. Önce malzemeler hazırlanır. Sonra miktarı ayarlanır ve sıraya göre gidilir. Bu tip örnekler çoğaltılabilir. Önemli olan kurallara uyulmuş olmaktır. Kurallara uyarsak ve mantığı düzgün kurarsak hayatımız düzenli olacak(ilk örnek) ve yemeğimiz(ikinci örnek) lezzetli olacaktır.



Algoritma geliştirmek programlamanın temelidir. Çok iyi öğrenilmesi gereken bir konudur. Algoritma bize mantıklı ve sıralı düşünmenin kolaylığını sağlar. Yazılan tüm programların bir algoritması vardır. Her program algoritma mantığı ile işler.

Nedir bu algoritma diyecek olursak: Belli bir problemi çözmek ve belirli bir amaca ulaşmak için izlenen yoldur.
Örnek: Kullanıcıdan iki sayı alacağız ve bunları toplayıp ekranda göstereceğiz.
Adım 1: İlk sayıyı al.
Adım 2: İkinci sayıyı al.
Adım 3: İlk sayı ile ikinci sayıyı topla.
Adım 4: Toplamı ekranda göster.
Bu adımları takip edersek istediğimiz amaca ulaşırız.

Algoritma istenen sonucu elde etmek için yapılan bir planda olabilir. Düşünmenizi ve mantıklı yollar çizmenizi sağlar. Düşünülmesi gereken girilen veriler ve çıktıların nasıl olacağıdır. Size bir problem verildiğinde direkt olarak programlamaya başlarsanız sıkıntı yaşamanız muhtemeldir. Öncesinde algoritma geliştirmek bir zorunluluktur.. Düşünün. Bu problemi çözmek için ne yapabilirim. Benden ne isteniyor?  Mantıklı bir çözüm ne olabilir. İlk adım şu olmalı.. İkinci adım bu olmalı.. diyerek probleme odaklanın. Programlamada bir başka avantajda yanlışta olsa doğruda olsa bir şeylere kesin hükümler verebilmektir. Şu! yok yok bu! demek yerine şu! deyip denemektir. Üzülerek belirteyim ki bilgisayarlar ikilemde kalanları sevmiyor.

Algoritmanın başlıca özellikleri vardır. Bunları 5 özellik olarak belirtebiliriz:
1.Girdi
2.Çıktı
3.Açıklık
4.Sonlu olma
5.Anlaşılırlık

Girdi kavramını açıklayalım. Her programda belirli bir girilen işlemler vardır. Bunu fabrikaya giren ham maddeler olarak örnekleyebiliriz. Fabrikayı bir program olarak düşünürsek ham maddeler bizim girdilerimizdir. İsterseniz bu örnekten devam edip "Çıktı" kavramına geçelim. Fabrikamıza ham maddelerimizi gönderdik ve istediğimiz ürünlerin çıkması gerekiyor. Biz fabrikaya ne tür işlemler uygularsak o tür sonuçlar çıkar. İşte fabrikadan çıkan ürünlerde çıktı dır. "Açıklık" kavramı adı üstünde yazılan her adımın açık olması gerektiğidir. "Sonlu olma" kavramı programın bir bitiş noktasının olmasıdır. "Anlaşılırlık" ise yazılan algoritmanın programlama diline kolayca çevrilebilir olmasıdır.

Bir sonraki dersimizde görüşmek üzere..

Hakkımda

Blogger tarafından desteklenmektedir.

Blog Arşivi

Çok Okunanlar

Blog Yazılarım SERKANCAY.COM'da

Herkese merhabalar. Burası benim eski blog yazılarımın bulunduğu alandır. Yeni yayınlarım artık serkancay.com adresinden devam edecektir. Kategoriler halinde gerek genel konulardan gerek teknik konulardan bahsedeceğim. Ziyaretiniz için teşekkürler...