14 Nisan 2025 Pazartesi

Algoritma ve Bilişim - İnteraktif Öğrenme

ALGORİTMA VE BİLİŞİM - İnteraktif Öğrenme

ALGORİTMİK YAPILAR

Algoritmik yapılar, bir problemi çözmek veya belirli bir görevi yerine getirmek için adım adım talimatlar içeren yapılardır. Bilgisayar programlarının temeli olan algoritmik yapılar, Cezeri'nin çalışmalarında olduğu gibi geçmişten günümüze gerçek yaşam durumlarında geniş bir alanda kullanılır.

Tarihsel Bir Bakış: Cezeri ve İcatları

Ünlü İslam âlimi ve mühendis Cezeri'nin 1206 yılında tamamladığı "Hünerli Mekanik Cihazların Bilgi Kitabı"; otomatlar, su saatleri, makineler ve diğer mekanik cihazlarla ilgili tasarımları içerir. Modern teknolojiden yüzyıllar önce kaleme alınan bu kitap; Cezeri'nin icadı olan makinelerin tasarımına, üretimine, montajına ilişkin bilgi ve talimatların, ayrıca günümüzdeki robotik uygulamalarını çağrıştıran yönergelerin yer aldığı eşsiz bir kaynaktır.

Fil Saati: Tarihten Gelen Bir Algoritma Örneği

Fil saati, Mardin'in Artuklu ilçesindeki Kasımiye Medresesi'nde sergilenmektedir. Cezeri'nin icat ettiği bu saat, 30 dakikada bir sesli uyarı veren otomatik bir sistemdir. Bu sistemde su gücüyle çalışan robotik prensipler geçerlidir.

Fil Saati Çalışma Algoritması:

1. adım: Fil figürünün dâhili haznesi, yeterli miktarda su ile doldurulur. Hazne içerisine önceden gözenek genişliği ayarlanmış, yüzer bir kap yerleştirilir. Bu kap, tasarlanmış gözenek boyutu sayesinde tam olarak 30 dakika boyunca yüzeyde kalmak üzere dengelenmiştir.
2. adım: Kabın altındaki gözenek, suyun yavaşça içeri girmesine izin verir. Bu işlem, kabın kademeli olarak ağırlaşmasına ve su seviyesiyle birlikte alçalmasına yol açar. Kabın batma süreci, zamanlama mekanizmasının temelini oluşturur.
3. adım: Kap, 30 dakika sonunda tamamen batar. Bu koşul sağlandığında fil figürünün baş kısmında bulunan ve kabın batmasıyla etkinleşen mekanik bir tetikleyici harekete geçer.
4. adım: Tetikleyici, bir çekiç mekanizmasını aktive eder. Bu çekiç, fil figürünün baş kısmında bulunan ve ses üretmek için tasarlanmış metal bir çana vurur.
5. adım: Çekiçten gelen darbe belirgin bir ses üretir ve bu ses yarım saatlik periyodun tamamlandığını gösterir. Ses hem uyarı hem de zamanı işaret etme işlevi görür.
6. adım: Sesli uyarıdan sonra sistem yenilenir. Kap, elle işletilen veya otomatik bir mekanizma ile su yüzeyine yeniden yerleştirilir ve 30 dakikalık yeni bir süreç başlar.

Cezeri; insan müdahalesine gerek kalmadan dış dünyanın gereksinimlerine uyum sağlayarak kendini yenileyebilen, verilen görevleri yerine getirebilen, yapay veya biyolojik sistemlerin kontrolü ve iletişimi üzerine odaklanan, günümüzde sibernetik olarak adlandırılan bilim dalının temellerini atmıştır.

ALGORİTMİK YAPILAR İÇERİSİNDEKİ MANTIK BAĞLAÇLARI

Mantık bağlaçları, algoritmik yapıların temel yapı taşlarından biridir. Koşulların değerlendirilmesi, karar verme süreçleri ve karmaşık ifadelerin oluşturulmasında kullanılırlar.

Temel Mantık Bağlaçları

Bağlaç İşlevi Algoritmalardaki Kullanımı Matematiksel Sembol
VE (AND) İki veya daha fazla önermenin hepsinin doğru olup olmadığını kontrol eder. İki koşulun da sağlanması gerektiği durumlarda kullanılır.
VEYA (OR) İki veya daha fazla önermeden en az birinin doğru olup olmadığını kontrol eder. Koşullardan en az birinin sağlanması gerektiği durumlarda kullanılır.
YA DA (XOR) İki önermeden yalnızca birinin doğru olup olmadığını kontrol eder. İki koşuldan tam olarak birinin sağlanması gerektiği durumlarda kullanılır.
İSE (IF) Bir koşulun sağlanması durumunda belirli bir komutun yerine getirilmesini sağlar. Şartlı durumların kontrol edilmesinde kullanılır.Birinci önerme doğru iken ikinci önerme yanlış ise sonuç yanlış olur,diğer tüm durumlarda sonuç doğru çıkar.
DEĞİL (NOT) Bir önermenin tersini alır. Olumsuz koşulların kontrolünde kullanılır. ¬

Mantık Bağlaçlarının Günlük Hayattan Sözel Örnekleri

VE (AND) Bağlacı:

Örnek: "Hafta sonu pikniğe gitmek için hava güneşli ve sıcak olmalı."

Açıklama: Pikniğe gitmek için iki koşulun da (güneşli hava ve sıcaklık) sağlanması gerekiyor. Matematiksel olarak: (Hava = Güneşli) ∧ (Sıcaklık > 20°C).

VEYA (OR) Bağlacı:

Örnek: "Sinemaya gitmek için ya arkadaşım müsait olmalı veya yeni bir film vizyona girmeli."

Açıklama: Sinemaya gitmek için koşullardan en az birinin gerçekleşmesi yeterli. Matematiksel olarak: (Arkadaş = Müsait) ∨ (Yeni Film = Evet).

YA DA (XOR) Bağlacı:

Örnek: "Akşam yemeği için ya pizza sipariş edeceğim ya da makarna yapacağım."

Açıklama: İki seçenekten sadece biri seçilecek, ikisi birden değil. Matematiksel olarak: (Pizza = Evet) ⊕ (Makarna = Evet).

İSE (IF) Bağlacı:

Örnek: "Eğer yarın hava yağmurluysa, dışarı çıkmayacağım."

Açıklama: Bir koşulun (yağmur) gerçekleşmesi durumunda belirli bir sonuç (dışarı çıkmama) olacak. Matematiksel olarak: (Hava = Yağmurlu) → (Dışarı Çıkma = Hayır).

DEĞİL (NOT) Bağlacı:

Örnek: "Hava soğuk değilse, yürüyüşe çıkacağım."

Açıklama: Koşulun tersi (soğuk olmama) durumunda bir eylem gerçekleşecek. Matematiksel olarak: ¬(Hava = Soğuk).

İnteraktif Bağlaç Değerlendirme: Burs Başvuru Simülasyonu

Bu araçla bir öğrencinin burs almaya hak kazanıp kazanmadığını mantık bağlaçları kullanarak test edebilirsiniz.

Koşullar:
  • Burs Kriteri 1: Not ortalaması > 85 VE gönüllü etkinlik yılı ≥ 2 VE bilimsel projede yer almış olmalı.
  • Burs Kriteri 2: Not ortalaması ≥ 90 VEYA bilimsel projede yer almış olmalı.
  • Ekstra Koşul: Gönüllü etkinlik yılı < 5 YA DA not ortalaması > 80 olmalı (sadece biri geçerli).
  • Red Kriteri: Not ortalaması < 70 İSE burs alınamaz.
  • Geçersizlik: Bilimsel proje DEĞİL ise bazı burslar geçersiz olabilir.

Yönerge: Aşağıdaki alanlara öğrencinin bilgilerini girin ve "Değerlendir" butonuna tıklayın. Sonuçlar, her mantık bağlacının nasıl çalıştığını gösterecek.

Mantık Bağlaçlarının Algoritmalardaki Önemi

Mantık bağlaçları sayesinde:

  • Karmaşık koşulların mantıksal olarak modellenmesi sağlanır.
  • Algoritmalarda esneklik ve doğruluk artar.
  • Gerçek dünya problemlerine uygun çözümler üretilebilir.

NİCELEYİCİLER VE ALGORİTMALARDA KULLANIMI

Niceleyiciler, bir önermenin hangi durumlarda ve ne kadar geçerli olduğunu belirleyen mantıksal operatörlerdir. Algoritmik yapılarda ve matematiksel ispatlarda önemli rol oynarlar.

Temel Niceleyiciler

Niceleyici İşlevi Algoritmalardaki Kullanımı
HER (∀) Bir önermenin tüm ögeler için doğru olduğunu ifade eder. Tüm elemanlar için bir koşulun sağlanması gerektiğinde kullanılır.
BAZI (∃) Bir önermenin en az bir öge için doğru olduğunu ifade eder. En az bir elemanın bir koşulu sağlaması gerektiğinde kullanılır.

Niceleyici Örnekleri:

HER Niceleyicisi: "Her tek tam sayının karesi de tektir."

Matematiksel gösterim: ∀n ∈ Z, n tek sayı ise n² de tek sayıdır.

BAZI Niceleyicisi: "Bazı tam sayıların karesi kendisine eşittir."

Matematiksel gösterim: ∃n ∈ Z öyle ki n² = n

Niceleyicilerin Matematiksel İspatlarda Kullanımı

Niceleyiciler, matematiksel önermelerin ispatında şu şekillerde kullanılır:

  • Genelleme yaparak tüm durumlara uygulanabilir sonuçlar elde etmek için
  • Karşıt örneklerle bir önermenin yanlışlığını göstermek için
  • Belirli koşulları sağlayan elemanların varlığını kanıtlamak için

İspat Örneği 1: Her tek tam sayının karesi de tektir.

1. adım: n ∈ Z için x = 2n + 1 olsun. (Burada x herhangi bir tek sayıyı temsil eder)
2. adım: x² = (2n + 1)² = 4n² + 4n + 1 = 2(2n² + 2n) + 1
3. adım: 2(2n² + 2n) + 1 ifadesi 2k + 1 biçimindedir (k = 2n² + 2n için)
4. adım: 2k + 1 biçimindeki her sayı tek olduğundan, x² tek sayıdır.
5. adım: Böylece, her tek sayının karesi de tektir.

İspat Örneği 2: Bazı tam sayıların karesi kendisine eşittir.

1. adım: n ∈ Z için n² = n olacak bir n bulalım.
2. adım: n² - n = 0 → n(n - 1) = 0
3. adım: Çözüm: n = 0 veya n = 1
4. adım: Kontrol: n = 0 için 0² = 0, n = 1 için 1² = 1
5. adım: Böylece, ∃n ∈ Z öyle ki n² = n (örneğin, n = 0 ve n = 1).

İspat Örneği 3: Her pozitif tam sayının karekökünden küçük bir tam sayı vardır.

1. adım: n ∈ Z+ için √n düşünelim.
2. adım: k = ⌊√n⌋ (n'nin karekökünün tam sayı kısmı) olsun.
3. adım: k² ≤ n < (k + 1)² olduğundan k ≤ √n
4. adım: k tam sayı olduğundan ve √n'ye eşit veya küçük olduğundan, her n için böyle bir k vardır.
5. adım: Böylece, ∀n ∈ Z+ için ∃k ∈ Z öyle ki k ≤ √n.

MANTIK BAĞLAÇLARI VE NİCELEYİCİLER İLE ÖRNEKLER

Bir lise, akademik ve sosyal faaliyetlerde üstün başarı göstermiş öğrencilere burs vermek için özel bir program başlatmıştır. Bu program; öğrencilerin not ortalamalarını, etkinliklere ve bilimsel projelere katılımlarını dikkate alarak burs alacak öğrencileri belirlemektedir.

Burs Kriterleri:

  • Not ortalaması 85'ten büyük olmalıdır.
  • En az 2 yıl gönüllü etkinliklere katılım olmalıdır.
  • Bilimsel projede yer almış olmalıdır.

Algoritmik Doğal Dil ile İfadesi:

1. adım: Başla.
2. adım: Öğrencinin not ortalamasını (N), gönüllü etkinlik yılını (G) ve bilimsel proje durumunu (B) al.
3. adım: Eğer (N > 85) VE (G ≥ 2) VE (B = Evet) ise, öğrenci bursa hak kazanır.
4. adım: Değilse, öğrenci bursa hak kazanamaz.
5. adım: Bitir.

Animasyonlu Akış Şeması:

Bu akış şeması, burs değerlendirme algoritmasını adım adım gösterir.

Bir sayının 6'ya bölünebilmesi için hem 2'ye hem de 3'e tam bölünebilmesi gerekir. Bu özelliği algoritmik olarak kontrol edelim.

Önerme:

"abc üç basamaklı bir doğal sayı ve k, m ve n ∈ Z+ olmak üzere abc = a·100 + b·10 + c, c = 2k ve a+b+c = 3m ⟹ abc = 6n"

İspat:

1. adım: a+b+c, 3'ün katı ise abc sayısı 3'e tam bölünür.
2. adım: c çift sayı ise (c = 2k), abc sayısı 2'ye tam bölünür.
3. adım: Sayının hem 2'ye hem de 3'e bölünebilmesi, sayının 6'ya bölünebileceği anlamına gelir.
4. adım: a+b+c = 3m ise, abc sayısı 3'e tam bölünür.
5. adım: c = 2k ise, abc sayısı çift sayıdır, yani 2'ye tam bölünür.
6. adım: Bir sayı hem 2'ye hem de 3'e bölünebiliyorsa, 6'ya da bölünebilir.
7. adım: O hâlde, abc = 6n olur.

Örnek:

732 sayısını kontrol edelim:

  • 7+3+2 = 12, 3'ün katıdır. Dolayısıyla 732 sayısı 3'e tam bölünür.
  • 2 çift sayıdır. Dolayısıyla 732 sayısı 2'ye tam bölünür.
  • 732 sayısı hem 2'ye hem de 3'e tam bölündüğü için 6'ya da tam bölünür.
  • Nitekim, 732 ÷ 6 = 122

Animasyonlu Akış Şeması:

Bu akış şeması, bir sayının 6'ya bölünebilirliğini kontrol eder.

Bir sayının asal olup olmadığını belirleyen algoritma, mantık bağlaçları ve niceleyiciler kullanılarak oluşturulabilir.

Asal Sayı Tanımı:

n > 1 olmak üzere, n ∈ Z+ için, yalnızca 1 ve kendisine tam bölünebilen sayılara asal sayı denir.

Matematiksel İfade:

n > 1 ve n ∈ Z+ için, ∀k ∈ Z+, 1 < k < n ⟹ k, n'yi tam bölmez

Algoritmik Doğal Dil ile İfadesi:

1. adım: Başla.
2. adım: n'yi al.
3. adım: Eğer n = 1 ise, "Asal değildir" çıktısını ver ve bitir.
4. adım: Eğer n = 2 ise, "Asaldır" çıktısını ver ve bitir.
5. adım: k = 2 olarak belirle.
6. adım: Eğer n, k'ya tam bölünüyorsa, "Asal değildir" çıktısını ver ve bitir.
7. adım: k'yı 1 artır.
8. adım: Eğer k < n ise, 6. adıma dön.
9. adım: "Asaldır" çıktısını ver.
10. adım: Bitir.

Animasyonlu Akış Şeması:

Bu akış şeması, bir sayının asal olup olmadığını kontrol eder.

Bir kütüphane, üyelik için bazı koşulları değerlendirmektedir.

Üyelik Kriterleri:

  • Yaş 18'den büyük olmalı VEYA öğrenci olmalı.
  • En az 1 kitap bağışı yapmış olmalı.

Algoritmik Doğal Dil ile İfadesi:

1. adım: Başla.
2. adım: Kişinin yaşını (Y), öğrenci durumunu (O) ve bağış sayısını (B) al.
3. adım: Eğer ((Y > 18) VEYA (O = Evet)) VE (B ≥ 1) ise, üye olabilir.
4. adım: Değilse, üye olamaz.
5. adım: Bitir.

Animasyonlu Akış Şeması:

Bu akış şeması, kütüphane üyelik koşullarını kontrol eder.

Bir trafik ışığı sistemi, araç ve yaya durumuna göre çalışır.

Koşullar:

  • Araç varsa VEYA yaya yoksa yeşil yanar.
  • Aksi takdirde kırmızı yanar.

Algoritmik Doğal Dil ile İfadesi:

1. adım: Başla.
2. adım: Araç durumunu (A) ve yaya durumunu (Y) al.
3. adım: Eğer (A = Evet) VEYA (Y = Hayır) ise, "Yeşil" yanar.
4. adım: Değilse, "Kırmızı" yanar.
5. adım: Bitir.

Animasyonlu Akış Şeması:

Bu akış şeması, trafik ışığı kontrol algoritmasını gösterir.

Bir sayının hem çift hem de pozitif olup olmadığını kontrol edelim.

Önerme:

"n ∈ Z+ ve n çift ise n > 0"

Algoritmik Doğal Dil ile İfadesi:

1. adım: Başla.
2. adım: n'yi al.
3. adım: Eğer (n > 0) VE (n mod 2 = 0) ise, "Çift ve pozitiftir" çıktısını ver.
4. adım: Değilse, "Çift ve pozitif değildir" çıktısını ver.
5. adım: Bitir.

Animasyonlu Akış Şeması:

Bu akış şeması, bir sayının çift ve pozitif olup olmadığını kontrol eder.

İNTERAKTİF UYGULAMALAR

Mantık Bağlaçları Hesaplayıcı

İki Önerme Arasındaki Mantık Bağlaçlarını Değerlendir:

Aşağıdaki araçla iki önerme (P ve Q) için mantık bağlaçlarının sonuçlarını görebilirsiniz:

BağlaçSonuç
P ∧ Q (P VE Q)-
P ∨ Q (P VEYA Q)-
P ⊕ Q (P YA DA Q)-
P → Q (P İSE Q)-

Fil Saati Algoritma Simülatörü

Cezeri'nin Fil Saati Mekanizmasını Simüle Et:

Bu araç, Cezeri'nin fil saati mekanizmasını simüle eder. Su seviyesi azaldıkça zamanı ölçer ve 30 dakikada bir ses çıkarır:

Animasyonlu Akış Şeması: Sayı Çift mi?

Bir Sayının Çift Olup Olmadığını Kontrol Et:

Bu araç, bir sayının çift olup olmadığını kontrol eden bir algoritmayı adım adım animasyonlu bir akış şemasıyla gösterir.

Sembollerin Adı ve Anlamı

Elips: Akış diyagramının başlangıç ve bitiş yerlerini gösterir.
Paralel Kenar: Programa veri girişi için kullanılır.
Dikdörtgen: Aritmetik işlemler ve her türlü atama işlemlerinin temsil edilmesi için kullanılır.
Altıgen: Program içinde belirli blokların arka arkaya tekrar edileceğini gösterir.
Eşkenar Dörtgen: Karar verme işlemini temsil eder.
Belge: Ekrana veya yazıcıya bilgi çıkışı için kullanılır.
Daire: Birleştirici veya bağlantı noktalarını temsil eder.
Oklar: Diyagramın akış yönünü, yani herhangi bir adımda işlem tamamlandıktan sonra hangi adımın geleceğini gösterir.

KENDİNİZİ TEST EDİN

İlerleme: 1/3 (Kolay Test)

Kolay Test

1. Bazı doğal sayılar sıfırdan büyüktür ifadesi hangisi ile gösterilir?

2. "VE" bağlacı neyi ifade eder?

3. "P veya Q" ifadesi ne zaman doğrudur?

4. "HER" niceleyicisi neyi ifade eder?

5. Algoritma nedir?

6. "Bazı tam sayıların karesinin 1 fazlası 3'ten küçüktür."

7. "BAZI" niceleyicisi neyi ifade eder?

8. Aşağıdaki önermelerden hangisi doğrudur?

9. "P ise Q" ifadesi ne zaman yanlıştır?

10. Cezeri'nin fil saati hangi güçle çalışır?

Orta Test

1. ∃ x ve y ∈ N için x + y = 3" önermesini sağlayan kaç farklı (x, y) sıralı ikilisi vardır?

2. "P ∧ Q" ifadesi ne zaman doğrudur?

3. "P ya da Q" neyi ifade eder?

4. "∀n ∈ Z+, n > 0" önermesi doğru mudur?

5. Aşağıda verilen önermelerden hangisi yanlıştır?

6. "∃n ∈ Z+ öyle ki n² = n" için hangi n değeri geçerlidir?

7. Bir algoritmanın temel özelliği nedir?

8. p V q önermesi yanlış ise hangisi doğrudur ?

9. p ya da q önermesi doğru ise hangisi kesinlikle doğrudur ?

10. Fil saatinin sesli uyarı periyodu nedir?

Zor Test

1. "∀n ∈ Z+, ∃k ∈ Z+ öyle ki n = 2k" önermesi doğru mudur?

2. "P → Q" ifadesinin yanlış olması için ne gereklidir?

3. p ise q önermesi yanlış ise hangisi yanlıştır?

4. "∃n ∈ Z+ öyle ki n² + 1 = 0" önermesi doğru mudur?

5. (p ∧ q) → (p ya da r) önermesi yanlış ise hangisi doğrudur?

Hiç yorum yok:

Yorum Gönder