Algoritma Nedir? Bölüm 1

Algoritma bir problemin çözümü için uygulanması yada takip edilmesi gereken yönergelerin tümü olarak ifade edilebilir. Teknik olarak ilgili problemin çözümü için kullanılacak komut dizesi de algoritma dır.


Algoritma: Bir dizi işlemi kesin olarak tanımlayan bir dizi kuraldır. Algoritmalar bir probleme karşı sunulan çözüm yolunun adım adım anlatılmasını ve programın karşılaştığı farklı durumlar karşısında KARARSIZ kalmadan sonuca EN KISA YOLDAN ve EN AZ MALİYETLE gitmesini amaç etmektedir. Başarılı bir algoritma üretilmesi için gereken problemi olabildiğince iyi anlamaktır. Problem, NET ve YALIN olarak ifade edilmelidir ve algoritma özellikleri dikkate alınarak çözüme gitmek hedeflenmelidir.


KÜÇÜK BİR ÖRNEK VERECEK OLURSAK
Güzel bir spagetti pişirmenin kesin olarak 3 adımı vardır.
1=] Su kaynat.
2=] İçine makarna koy.
3=] Süz.


Bu üç adımdan birini yanlış yapacak olursak makarnamız ya lapa gibi olur yada pişmez! Dikkat edelim...


ALGORİTMA ÖZELLİKLERİ


Algoritma=Problem+Yönergeler+Çözüm
✓ Her algoritmanın BAŞLANGIÇ ve BİTİŞ noktası vardır.
✓ Olabildiğince TEKNİK KAVRAMLARDAN KAÇINILMALIDIR. Kullanılan ifadeler SADE ve YALIN olmalıdır. Bu nedenle algoritmalar her zaman AÇIK ve ANLAŞILIR olmalıdır.
✓ Algoritmalar HİÇBİR ÇÖZÜM AŞAMASINDA ÇÖZÜMSÜZ KALMAMALIDIR.
✓ Algoritmalar özel olarak tanımlanmış SİSTEMATİK ADIMLAR İÇERİR.
✓ Tüm işlemler ADIM ADIM işlenmelidir.
✓ Çözüme giden EN KISA ve MALİYETSİZ yol seçilmelidir.


!!! Matematik ve bilgisayar bilimlerinde, algoritma tipik olarak bir sınıf problemi çözmek veya bir hesaplama yapmak için tanımlanmış BİLGİSAYAR TARAFINDAN UYGULANABİLEN TALİMATLARIN SINIRLI BİR DİZİSİ olarak tanımlanır!!!


ALGORİTMANIN MATEMATİKTEKİ YERİ Algoritma içeriğinde ARİTMETİK ve MANTIKSAL adımlar bulunabilir. Matematiksel açıdan algoritmalara bir PROSEDÜR yada FONKSİYON gözü ile bakılabilir.


ÖRNEK: OPERATÖR C# DİLİNDEKİ SEMBOLÜ
and(ve) &&


or(veya) | |


not(değil) !


KARŞILAŞTIRMA C# DİLİNDEKİ SEMBOLÜ
X=Y X==Y
X≠Y X=!Y
X≤Y X<=Y
X≥Y X=>Y


Günümüzde gerçek hayat problemleri dikkate alındığında, problemleri tarif etmek üzere gereken VERİNİN ÇOK FAZLA OLDUĞU ve problem için bilgi toplamanın, bazı durumlarda bilgiyi alan uzmanlarına doğrultmanın zor olduğu durumlar ortaya çıkmıştır. Bu türden problemleri çözmek üzere önerilen algoritmalar veriden problemi çözmeye yatkındır. Problem türleri çok değişken olsa da veriye dayalı olarak bir model ortaya çıkarabilmektedir ve arzu edilen çözüme yakın sonuçlar alınabilmektedir. Algoritmanın kesirli (ayrık) bir yapıya sahip uygulamalardaki rolü, geleneksel matematiğin fonksiyon bilgisi ile kesişir. Bir başka ifadeyle bir algoritma çıktı olarak geriye değer döndürüyor ise FONKSİYON OLARAK; VOİD olarak tanımlanmış ise yani geriye değer döndürmüyor ise PROSEDÜR olarak ifade edilir. İlaveten,matematiksel çözüm isteyen ve analitik yapıda OLMAYAN bütün problemlerin bir algoritma ile ifade edilmesi ve algoritmaların ÇALIŞMA SÜRELERİNİN FONKSİYONEL bir yapıda olması, algoritmaların matematikteki yerini ve önemini ön plana çıkarır.


Bir sonraki konular;
AKIŞ ŞEMALARI
ALGORİTMANIN YAPI BİLİMİ
 

trombolol33001

Katılımcı Üye
19 Kas 2021
420
142
18
Algoritma bir problemin çözümü için uygulanması yada takip edilmesi gereken yönergelerin tümü olarak ifade edilebilir. Teknik olarak ilgili problemin çözümü için kullanılacak komut dizesi de algoritma dır.


Algoritma: Bir dizi işlemi kesin olarak tanımlayan bir dizi kuraldır. Algoritmalar bir probleme karşı sunulan çözüm yolunun adım adım anlatılmasını ve programın karşılaştığı farklı durumlar karşısında KARARSIZ kalmadan sonuca EN KISA YOLDAN ve EN AZ MALİYETLE gitmesini amaç etmektedir. Başarılı bir algoritma üretilmesi için gereken problemi olabildiğince iyi anlamaktır. Problem, NET ve YALIN olarak ifade edilmelidir ve algoritma özellikleri dikkate alınarak çözüme gitmek hedeflenmelidir.


KÜÇÜK BİR ÖRNEK VERECEK OLURSAK
Güzel bir spagetti pişirmenin kesin olarak 3 adımı vardır.
1=] Su kaynat.
2=] İçine makarna koy.
3=] Süz.


Bu üç adımdan birini yanlış yapacak olursak makarnamız ya lapa gibi olur yada pişmez! Dikkat edelim...


ALGORİTMA ÖZELLİKLERİ


Algoritma=Problem+Yönergeler+Çözüm
✓ Her algoritmanın BAŞLANGIÇ ve BİTİŞ noktası vardır.
✓ Olabildiğince TEKNİK KAVRAMLARDAN KAÇINILMALIDIR. Kullanılan ifadeler SADE ve YALIN olmalıdır. Bu nedenle algoritmalar her zaman AÇIK ve ANLAŞILIR olmalıdır.
✓ Algoritmalar HİÇBİR ÇÖZÜM AŞAMASINDA ÇÖZÜMSÜZ KALMAMALIDIR.
✓ Algoritmalar özel olarak tanımlanmış SİSTEMATİK ADIMLAR İÇERİR.
✓ Tüm işlemler ADIM ADIM işlenmelidir.
✓ Çözüme giden EN KISA ve MALİYETSİZ yol seçilmelidir.


!!! Matematik ve bilgisayar bilimlerinde, algoritma tipik olarak bir sınıf problemi çözmek veya bir hesaplama yapmak için tanımlanmış BİLGİSAYAR TARAFINDAN UYGULANABİLEN TALİMATLARIN SINIRLI BİR DİZİSİ olarak tanımlanır!!!


ALGORİTMANIN MATEMATİKTEKİ YERİ Algoritma içeriğinde ARİTMETİK ve MANTIKSAL adımlar bulunabilir. Matematiksel açıdan algoritmalara bir PROSEDÜR yada FONKSİYON gözü ile bakılabilir.


ÖRNEK: OPERATÖR C# DİLİNDEKİ SEMBOLÜ
and(ve) &&


or(veya) | |


not(değil) !


KARŞILAŞTIRMA C# DİLİNDEKİ SEMBOLÜ
X=Y X==Y
X≠Y X=!Y
X≤Y X<=Y
X≥Y X=>Y


Günümüzde gerçek hayat problemleri dikkate alındığında, problemleri tarif etmek üzere gereken VERİNİN ÇOK FAZLA OLDUĞU ve problem için bilgi toplamanın, bazı durumlarda bilgiyi alan uzmanlarına doğrultmanın zor olduğu durumlar ortaya çıkmıştır. Bu türden problemleri çözmek üzere önerilen algoritmalar veriden problemi çözmeye yatkındır. Problem türleri çok değişken olsa da veriye dayalı olarak bir model ortaya çıkarabilmektedir ve arzu edilen çözüme yakın sonuçlar alınabilmektedir. Algoritmanın kesirli (ayrık) bir yapıya sahip uygulamalardaki rolü, geleneksel matematiğin fonksiyon bilgisi ile kesişir. Bir başka ifadeyle bir algoritma çıktı olarak geriye değer döndürüyor ise FONKSİYON OLARAK; VOİD olarak tanımlanmış ise yani geriye değer döndürmüyor ise PROSEDÜR olarak ifade edilir. İlaveten,matematiksel çözüm isteyen ve analitik yapıda OLMAYAN bütün problemlerin bir algoritma ile ifade edilmesi ve algoritmaların ÇALIŞMA SÜRELERİNİN FONKSİYONEL bir yapıda olması, algoritmaların matematikteki yerini ve önemini ön plana çıkarır.


Bir sonraki konular;
AKIŞ ŞEMALARI
ALGORİTMANIN YAPI BİLİMİ
Teşekkürler
 
Ü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.