Algoritma bir sorunun çözülmesi için izlenmesi gereken yollara verilen isimdir tabi bu lügatta geçen anlamıdır. Peki gerçek anlamda algoritma nedir?
Algoritma hayatın kendisidir. Aldığımız kararlardır. Varmak istediğimiz hedeflerdir. Senin su içmeye giderken izlediğin yolda bir algoritmadır. Yapmak istediğin mesleğe ulaşmak için çabaladığın enerjide bir algoritmadır. Yapay zekanın ses tonundan insanların duygularını anlayabilmesini sağlayan kodda bir algoritma ürünüdür.
Kısacası burda anlatmak istediğim şey. Yazılımın sadece bilgisayarda olmadığıdır. Hepiniz izlemişsinizdir Matrix'i sonuçta ne oluyordu? Seçilmiş kişi sadece restart atabiliyordu evrene bu filmin işleyişinden tutunda senaryosunda geçen her bir şey de bir algoritmadır.
Pi sayısı mesela. Bana kalırsa en büyük algoritmadır. İçinde bütün olasılık ve kombinasyonları bulunduran tek sayıdır. Senin yaşından tut, tuttuğun takımın atacağı gol sayısına, sevdiğin kişinin yaşına, müzisyensen yapacağın beste sayısına veya kırdığın her bir kalbin sayısına kadar bulundurur. Böyle bir gücü kullanmayı bilen bir kişi çıksa neler olabileceğini düşünebiliyor musun?
Şimdi algoritma konusuna geri dönecek olursak. Günümüzde lay algoritma kurmak değil artık. Artık herkes algoritma kurabiliyor. Önemli olan artık daha kısa algoritmalarla daha çok işlev yaptırabilmek. Bir işi yazılımdan örnek verecek olursam 5000 satır kod yazarak da yapabilirken aynı işi 10 ve hatta 2 satır ile de yapabiliriz belki de gelecekte daha gelişmiş teknolojilerle. Sonuçta bir önemli olan kısım da bunların barındırdığı kütüphaneler.
Kütüphanelere gelecek olursam en basit haliyle yazdığın koddaki tanımlamaları ve sınıfları bulunduran toplu bilgi tutuculardır. Tabi ki işlevi bu kadar değil ama ben burda her şeyi anlatmaya kalkarsam :).
Size 2 tane günlük yaşamımızdan 2 tane de kod ile algoritma örneği verip konumuzu bitirmek istiyorum.
Günlük yaşamdan vereceğim algoritmanın konusu su içmek olsun;
1-Eğer oturuyorsan kalk-> Mutfağa git->Bardak temizse bardak al-> Damacana da su varsa git-> Soğuk içmek istersen soğuk tuşa bas->Bardak yeterli doluluktaysa iç
2-Kardeşin varsa ve evdeyse->Seslen->Su iste->Getirdiyse iç
Yazılımdan vereceğim örnek istenilen sayılar arasındaki sayı verilerini kabul etmek ile ilgili olsun.
1-dim sayi as integer
sayi = val(InputBox("Bir sayı giriniz"))
if sayi < 20 && sayi>100 Then
MsgBox("Yeni sayıyı giriniz")
Else
MsgBox("Lütfen 20 ile 100 arasında bir sayi giriniz")
End If
2-dim sayi integer
sayi = val(Textbox1.Text)
if (sayi < 20 && sayi>100) Then
MsgBox("HATA")
End If
Daha bir sürü örnek verilebilir ama bugunlük bu kadar yeter. Herhangi bir sorunuz varsa sorabilirsiniz.