Bu tema, matematik ve bilgisayar bilimlerinin kesiştiği algoritma ve bilişim kavramlarını ele alır. Aşağıda bu konunun ana başlıkları ve açıklamaları bulunmaktadır.
Algoritma, bir problemi çözmek veya bir görevi tamamlamak için izlenen adım adım yöntemlerdir. Günlük hayattaki tarifler veya yönergeler gibi düşünülebilir.
Algoritmaları görselleştirmek için akış şemaları kullanılır. Temel semboller:
Bilişim, verinin işlenmesi ve bilgiye dönüştürülmesiyle ilgilidir. Temel kavramlar:
Matematikte sık kullanılan algoritmalar:
Not: Bu konular, programlamanın temelini oluşturur ve problem çözme becerilerini geliştirir.
Soru 1: Bir algoritma, belirli bir problemi çözmek için adım adım talimatlar dizisidir. Aşağıdakilerden hangisi algoritma oluştururken dikkat edilmesi gereken temel özelliklerden biri değildir?
a) Sonlu olmalıdır
b) Belirsiz ifadeler içermelidir
c) Açık ve anlaşılır olmalıdır
d) Girdi ve çıktıları tanımlanmalıdır
e) Etkili olmalıdır
Cevap: b) Belirsiz ifadeler içermelidir. Çözüm: Algoritmalar kesin ve net adımlardan oluşmalıdır. Belirsizlik, yanlış uygulamalara yol açar.
Soru 2: Bir programcı, 1'den 100'e kadar olan çift sayıları ekrana yazdıran bir algoritma tasarlamak istiyor. Aşağıdaki adımlardan hangisi bu algoritmanın doğru sıralamasıdır?
a) Başla → Sayı=2 → Sayı≤100 → Yazdır Sayı → Sayı=Sayı+2 → Dur
b) Başla → Sayı=1 → Sayı≤100 → Yazdır Sayı → Sayı=Sayı+1 → Dur
c) Başla → Sayı=0 → Sayı<100 → Yazdır Sayı → Dur
d) Başla → Sayı=1 → Sayı≤100 → Eğer Sayı mod 2=0 → Yazdır Sayı → Sayı=Sayı+1 → Dur
e) Başla → Sayı=2 → Sayı<100 → Yazdır Sayı → Sayı=Sayı+1 → Dur
Cevap: a) Başla → Sayı=2 → Sayı≤100 → Yazdır Sayı → Sayı=Sayı+2 → Dur. Çözüm: 2'den başlayıp 2 artırarak tüm çift sayıları kapsar ve 100 dahil olduğu için ≤ kullanılır.
Soru 3: Akış şemasında "döngü" yapısını temsil eden sembol aşağıdakilerden hangisidir?
a) Dikdörtgen
b) Elmas
c) Paralelkenar
d) Oval
e) Altıgen
Cevap: b) Elmas. Çözüm: Elmas şekli, karar verme (koşul/döngü) adımlarını temsil eder. Döngülerde koşul kontrolü bu sembolle gösterilir.
Soru 4: \( n \) elemanlı bir kümenin alt küme sayısını hesaplayan algoritmanın zaman karmaşıklığı nedir?
a) \( O(1) \)
b) \( O(n) \)
c) \( O(n^2) \)
d) \( O(2^n) \)
e) \( O(\log n) \)
Cevap: a) \( O(1) \). Çözüm: Alt küme sayısı formülü \( 2^n \) olduğundan, sabit bir matematiksel işlemle hesaplanır. Girdi boyutundan bağımsızdır.