Beş dakikada
"Algoritmayı" Tanıyın
Neredeyse her yerde kullanılan algoritmayı sorularla inceleyelim dedik ve A'dan Z'ye bir algoritma yazısını sizlere sunuyoruz.
11.04.2013 tarihli yazı 262389 kez okunmuştur.
Algoritma sözcüğü nereden gelir?
Algoritma sözcüğü Türkistanlı bir âlimden gelir. Türkistanlı âlim 9. yüzyılda Cebir adında bir kitap oluşturarak algoritmik çalışmalarını sergilemiştir. Kısaca algoritmayı bulan kişi kim diye sorulduğunda Ebu Abdullah Muhammed bin Musa el Harezmi diyebiliriz. Bu kitabın matematiğe çok büyük katkıları olmuştur. Bu kitap farklı dillere çevrilmiştir. Avrupa da çok ilgi gören kitabın ismi ve âlimin ismi Avrupalılar tarafından telaffuz edilemediği için “algorizm” sözcüğününü kullanmışlardır. Algorizm “Arap sayıları kullanarak problemleri çözmek” anlamına gelir. Zamanla algorizm algoritmaya dönüşmüştür.
Algoritma nedir?
Bir problemin çözümünde ızlenecek yol anlamına gelır ve problemin çözümünün adımlar halinde yazılmasıyla oluşturulur.Genellikle matematikte ve programlamada bir işi yapmak için tanımlanan, belli bir başlangıcı ve sonu olan, açıkça belirlenmiş basamaklardır.
Algorıtmada 3 temel bileşenimiz vardır.
1. Değişkenler: Dışarıdan girilen ve bizim oluşturduğumuz değerleri tutan elemanlardır.
2. Algoritma: Kısaca gerekli adımların mantıksal bir sıra ile yazılmasıdır.
3. Akış Diyagramı: Birbirine oklar gösterilerek algoritmaları ve şemaları birbirine bağlayan kutulara denir.
Her algoritma aşağıdaki kriterleri sağlamalıdır.
1. Girdi : Sıfır veya daha fazla değer dışarıdan verilmeli.
2. Çıktı : En azından bir değer üretilmeli.
3. Açıklık : Her işlem (komut) açık olmalı ve farklı anlamlar içermemeli.
4. Sonluluk: Her türlü olasılık için algoritma sonlu adımda bitmeli.
5. Etkinlik : Her komut kişinin kalem ve kağıt ile yürütebileceği kadar basit olmalıdır.
Not: Bir program için 4. özellik geçerli değil. işletim sistemleri gibi program sonsuza dek çalışırlar .
NOT: Algorıtma bir programlama dili değildir. (Programlama dillerine yol gösteren bir yöntem dizisidir.)
Neden gereklidir?
► Örneğin bir cep telefonunun el kitapçığında yazan, rehber kaydı girmek için izlenecek yollar, o işin algoritmasıdır.
► Örneğin, bir e-ticaret uygulamasında ürün satış algoritması çıkarılır.
► Örneğin,bir tiyatro uygulamasının sürekli gerçekleştireceği temel işlem bilet satmaktır. Bu işlemi gerçekleştirmek için gerekli kodlar yazılmadan önce, algoritma kurulmalıdır.
► Örneğin, üniversite eğitim notunu hesaplama; Üniversitede bir dersin başarı notu, vize ve bir final notu hesaplanır. Vize notunun katsayısı finalden daha düşüktür. Sonuçta çıkan not 50 ve üstüyse öğrenci geçer, 50 altıysa kalır. Vizenin %30 ve finalin %70 ağırlıklı olduğu başarı notunun hesaplanmasını akış diyagramı ve algorıtma kullanarak gösterilebilir.Yani sonuc kisminda sonuc değerinin 50’den büyük olup olmadığı kontrol edilip 50’den büyükse ekrana “Geçtiniz” 50’den küçükse ekrana “Kaldınız” yazan bir mesaj çıkartılır. Bu sayede algoritma yardimiyla gecenler ve kalanlar listesi kisa bir sure icinde hazirlamabilir.
** Bu ve benzeri işleri yapmak, kolaylastirmak ve hizlandirmak icin algoritma kullanilir.
Nasıl yapılır?
Bunu örneklerle açıklayalım...
Örnek 1 : 1 den 100 e kadar olan sayıların toplamını bulup sonucu ekrana yazan işlemin algoritmasını ve akış diyagramını tasarlayınız.
Değişkenler
sayıcımız: x
toplam değeri :t
Algoritma
Adım 1: Başla
Adım 2: Döngüyü başlat (x=1 den 100 e kadar)
Adım 3: t=t+x işlemini yap.
Adım 4:Döngüyü sonlandır.(x değeri 100 e ulaştığı zaman)
Adım 5: Toplam değerini yaz.
Adım 6: Bitir.
Örnek 1 : 1 den 100 e kadar olan sayıların toplamını bulup sonucu ekrana yazan işlemin algoritmasını ve akış diyagramını tasarlayınız.
Değişkenler
sayıcımız: x
toplam değeri :t
Algoritma
Adım 1: Başla
Adım 2: Döngüyü başlat (x=1 den 100 e kadar)
Adım 3: t=t+x işlemini yap.
Adım 4:Döngüyü sonlandır.(x değeri 100 e ulaştığı zaman)
Adım 5: Toplam değerini yaz.
Adım 6: Bitir.
Örnek 2:
Telefon kulübesinden telefon açmak için örnek bir algoritma
1. Telefon kulübesine git
2. Telefon kartı al
3. Telefon sırasında kaç kişi olduğuna bak
4. Kişi sayısı sıfırdan fazlaysa 3 e dön
5. Kapı kapalıysa kapıyı aç
6. İçeri gir, kapıyı kapat
7. Telefon kartını telefona yerleştir
8. Ahizeyi kaldır
9. Numarayı çevir
10. Konuşmanın bitip bitmediğine bak
11. Konuşma bittiyse kartı al, bitmediyse 10 a dön
12. Bir daha konuşma yapılacaksa 7 e dön
13. Kapıyı aç, dışarı çık
Bu algoritmanın işlemesi için, her ihtimal gözden geçirilerek, algoritma akışı gerekli yerlere yönlendirilir. Örneğin kapının kapalı olması durumunda kapıyı açmak için gerekli komutlar verilmelidir. Bu algoritmanın ihtiyaç duyduğu veriler, ya kullanıcı tarafından verilir ya da işlem başlamadan önce belirlidir. Sıradaki kişi sayısı, telefon kartı gibi veriler kullanıcı tarafından sağlanmış; çevrilecek numara, algoritma başlamadan önce belirlenmiştir.
Örnek 3:
Sınavdaki en büyük notun bulan algoritma.
1. En büyük = ilk sınav kağıdındaki not (ya da olabilecek en düşük değer kabul edilebilir).
2. İncelenecek sınav kağıdı var ise
3. 1 Sınav kağıdındaki not > En büyük ise En büyük = Sınav kağıdındaki not
4. En büyük değerini yaz.
5. Dur
Algoritmanın yazımı daha simgesel olabilir. Ni i. Öğrencinin notu olsun.
1. EB = N1
2. i = 2
3. İncelenecek sınav kağıdı var ise
4. 1 Ni>EB => EB = Ni
5. 2 i = i + 1
6. EB' yi yaz.
7. Dur
Örnek 4:
Klavyeden girilen 3 (bu değer değişebilir) yazılının ortalamasını bulup kalıp-geçtiğini hesaplayan programın algoritmasını yapınız.
Adım -Başla
Adım -1. yazılıyı giriniz(y1)
Adım -2. yazılıyı giriniz(y2)
Adım -3. yazılıyı giriniz(y3)
Adım -toplam=y1 + y2
Adım -ortalama=toplam + y3
Adım -ortalama= ortalama / 3(sınav sayısına göre değişkenlik gösterir)
Adım -Eğer ortalama 45'ten küçük ise(ortalama < 45)
Adım -kaldı
Adım -Eğer ortalama 45'ten büyük ise(ortalama > 45)
Adım -geçti
Adım -Dur(Stop)
YORUMLAR
Aktif etkinlik bulunmamaktadır.
- Dünyanın En Görkemli 10 Güneş Tarlası
- Dünyanın En Büyük 10 Makinesi
- 2020’nin En İyi 10 Kişisel Robotu
- Programlamaya Erken Yaşta Başlayan 7 Ünlü Bilgisayar Programcısı
- Üretimin Geleceğinde Etkili Olacak 10 Beceri
- Olağan Üstü Tasarıma Sahip 5 Köprü
- Dünyanın En İyi Bilim ve Teknoloji Müzeleri
- En İyi 5 Tıbbi Robot
- Dünyanın En Zengin 10 Mühendisi
- Üretim için 6 Fabrikasyon İşlemi
- DrivePro Yaşam Döngüsü Hizmetleri
- Batarya Testinin Temelleri
- Enerji Yönetiminde Ölçümün Rolü: Verimliliğe Giden Yol
- HVAC Sistemlerinde Kullanılan EC Fan, Sürücü ve EC+ Fan Teknolojisi
- Su İşleme, Dağıtım ve Atık Su Yönetim Tesislerinde Sürücü Kullanımı
- Röle ve Trafo Merkezi Testlerinin Temelleri | Webinar
- Chint Elektrik Temel DIN Ray Ürünleri Tanıtımı
- Sigma Termik Manyetik Şalterler ile Elektrik Devrelerinde Koruma
- Elektrik Panoları ve Üretim Teknikleri
- Teknik Servis | Megger Türkiye
ANKET