Algoritmanın Temel Felsefesi #bilgisayarbilimleri

r3dbl3nd3rs

Yeni üye
28 Haz 2022
27
22
Arsenik
Değerli hocalarım ve değerli arkadaşlar
TurkHackTeam camiasında çalışan ve azim eden bütün personel arkadaşlara selam olsun.
Konuya yavaştan giriş yapıyorum müsaadenizle.
Hayli kısacık uzun bir zaman içerisinde foruma giriş yapamamıştım. Ancak vakit bulabildim. Bilgisayar camiasında özellikle algoritma ve algoritma prensipleri üzerinde çeşitli fikir paylaşımları olmuş. Müsaadeniz olursa çorbamızda bizimde tuzumuz bulunsun.
İlk olarak algoritmanın ne olduğuyla ilgili durumdan giriş yapıp genel sonucumuza ulaşalım.

Algoritma neydi ?
Hayat içerisinde karşımıza çıkabilecek temel sorunların ve problemlerin çözüme ulaşabilmesi adına oluşturulan adımlar bütünü.

Algoritmanın Tarihçesi
Algoritma sözcüğü, Özbekistan'ın Harezm, bugünkü Türkmenistan'ın Hive kentinde doğmuş olan Ebu Abdullah Muhammed İbn Musa el Harezmi'den gelir.[4][5] Bu alim 9. yüzyılda cebir alanındaki algoritmik çalışmalarını kitaba dökerek matematiğe çok büyük bir katkı sağlamıştır. "Hisab el-cebir ve el-mukabala (حساب الجبر و المقابلة)" kitabı dünyanın ilk cebir kitabı ve aynı zamanda ilk algoritma koleksiyonunu oluşturur.

Çeşitli Algoritma Örnekleri
ÖRNEK 1
A0 --> Başla
A1 --> Sayaç=0 (Sayaç'ın ilk sayısı 0 olarak başlar.)
A2 --> Sayı=? : T=T+Sayı (Sayıyı giriniz. T'ye sayıyı ekle ve T'yi göster.)
A3 --> Sayaç=Sayaç+1 (Sayaç'a 1 ekle ve sayacı göster.)
A4 --> Sayaç<4 ise A2'ye git. (Eğer sayaç 4'ten küçükse Adım 2'ye git.)
A5 --> O=T/4 (Ortalama için T değerini 4'e böl)
A6 --> O'yu göster. (Ortalamayı göster.)
A7 --> Dur

ÖRNEK 2
Adım 1: Başla.
Adım 2: a, b, c, D, x1, x2, rp ve ip değişkenlerini tanımla.
Adım 3: Diskriminant değerini hesapla.
D ← b2-4ac
Adım 4: Eğer D≥0
x1 ← (-b+√D) / 2a
x2 ← (-b-√D) / 2a
değerlerini hesapla ve x1,x2 değişkenleri göster.
Eğer D≥0 değilse,
Gerçek kısım(rp) ve sanal kısmını(ip) hesapla.
rp ← b / 2a
ip ← √ (D) / 2a
Adım 5: "rp + j(ip)" ve "rp - j(ip)" değerlerini göster.
Adım 6: Dur.

ÖRNEK 3
Adım 1: Başla.
Adım 2: factorial,i ve n değişkenlerini tanımla.
Adım 3: Değişkenlerin başlangıç değerlerini tanımla.
factorial ← 1
i ← 1
Adım 4: Ekrandan girilen n değerini oku.
Adım 5: (i=n) eşitliği sağlanana kadar tekrarla.
5.1: factorial←factorial*i
5.2: i←i+1
Adım 6: factorial değişkeninin değerini göster.
Adım 7: Dur.

Bu ve buna benzer algoritma örneklerini verebilmek mümkün. Daha sade bir algoritma arıyorsanız, suyun ısıtılması probleminden yola çıkarak kendi algoritmanızı oluşturabilirsiniz.
Haydi algoritmanın temel felsefesi üzerine yoğunlaşalım:
Aslında tanımdan da belli olacağı şekilde bir problemi çözmenin yolu algoritmadan geçer.
Özellikle yazılım dünyasında, problemler üzerine projeler geliştirip tasarlandığı için o programı bozmak bile bir algoritma mantığı üzerinden geçer.
Saygılar ve hürmetler.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.