23. Sorunun Çözümü
KULLANILAN FORMÜL VE KURALLAR:
- Ardışık küpler toplamı formülü:
1^3 + 2^3 + 3^3 + \dots + n^3 = \left(\frac{n(n+1)}{2}\right)^2
- Akış şeması döngü mantığı: Şart sağlandığı sürece döngü devam eder, şart bozulduğu anda döngü sonlanır ve son değerler ile akış tamamlanır.
ÇÖZÜM ADIMLARI:
Step 1 — Algoritmanın Döngü Yapısını Analiz Etme
- Başlangıçta \text{sayı} = 1 ve \text{toplam} = 0 olarak atanmıştır.
- Her döngü adımında mevcut sayının küpü toplama eklenir: \text{toplam} = \text{toplam} + \text{sayı}^3.
- Ardından sayı 1 artırılır: \text{sayı} = \text{sayı} + 1.
- \text{sayı} \le 10 şartı kontrol edilir. Şart sağlandığı sürece işlem tekrarlanır.
Step 2 — Adım Adım Değer Değişimlerini İnceleme
- 1. Adım: \text{toplam} = 0 + 1^3 = 1^3, \text{sayı} = 2 (2 \le 10 \to Evet)
- 2. Adım: \text{toplam} = 1^3 + 2^3, \text{sayı} = 3 (3 \le 10 \to Evet)
- \dots
- 10. Adım: \text{toplam} = 1^3 + 2^3 + \dots + 10^3, \text{sayı} = 11 (11 \le 10 \to Hayır)
Step 3 — Önermelerin Doğruluğunu Kontrol Etme
- I. Önerme: Algoritma 1’den 10’a kadar olan 10 tane doğal sayının küpleri toplamını (1^3 + 2^3 + \dots + 10^3) hesaplar. (DOĞRU)
- II. Önerme: \text{sayı} = 10 iken 1 artırılarak 11 olur. 11 \le 10 koşulu “Hayır” verdiği için döngüden çıkılır. Algoritma bitirildiğinde \text{sayı} değişkeninin son değeri 11’dir. (DOĞRU)
- III. Önerme: Ekrana yazdırılan toplam çıktısı:
\left(\frac{10 \times 11}{2}\right)^2 = 55^2 = 3025
1000 olmadığı için bu ifade yanlıştır. (YANLIŞ)
━━━━━━━━━━━━━━━━━━━━━━━━━━━
CEVAP: B) I ve II
━━━━━━━━━━━━━━━━━━━━━━━━━━━
TEMEL KAVRAMLAR:
1. Döngü Çıkış Koşulu (Loop Termination)
- Tanım: Bir döngünün sonlanmasını belirleyen mantıksal koşuldur.
- Bu problemde: \text{sayı} \le 10 koşulu bozulduğu ilk an \text{sayı} = 11 anıdır ve döngü bu değerde sonlanır.
SIK YAPILAN HATALAR:
Döngü sonundaki değişken değerini yanlış belirleme
- Yanlış: Döngü 10’a kadar çalıştığı için son değeri 10 kabul etmek.
- Doğru: Koşul kontrolü \text{sayı} = \text{sayı} + 1 adımından sonra yapıldığı için 10’dan sonra sayı 11 olur ve 11 değeriyle döngüden çıkılır.
- Neden yanlış: Değişken artırımı karar kutusundan önce gerçekleşmektedir.
24. Sorunun Çözümü
KULLANILAN KURAL:
- Başlangıç değerlerinin döngü adımlarına olan doğrusal etkisi:
\text{Yeni Toplam} = \text{Başlangıç Değeri} + \sum \text{Döngüde Eklenenler}
ÇÖZÜM ADIMLARI:
Step 1 — Orijinal Çıktı Değerini Belirleme
- Başlangıçta \text{sayı} = 1 ve \text{toplam} = 0 iken çıktı K olarak tanımlanmıştır:
K = 0 + 1^3 + 2^3 + 3^3 + \dots + 10^3 = 1^3 + 2^3 + \dots + 10^3
Step 2 — Yeni Başlangıç Değerleriyle Döngüyü Takip Etme
- Yeni durumda \text{sayı} = 0 ve \text{toplam} = 1 olarak başlatılıyor:
- 1. Adım: \text{toplam} = 1 + 0^3 = 1, \text{sayı} = 0 + 1 = 1 (1 \le 10 \to Evet)
- 2. Adım: \text{toplam} = 1 + 0^3 + 1^3, \text{sayı} = 2 (2 \le 10 \to Evet)
- \dots
- Son Adım: \text{sayı} = 10 iken 10^3 eklenir, \text{sayı} = 11 olur ve döngüden çıkılır.
Step 3 — Yeni Çıktıyı K Cinsinden İfade Etme
\text{Yeni Çıktı} = 1 + 0^3 + 1^3 + 2^3 + \dots + 10^3
0^3 = 0 \implies \text{Yeni Çıktı} = 1 + 0 + (1^3 + 2^3 + \dots + 10^3)
\text{Yeni Çıktı} = 1 + K = K + 1
━━━━━━━━━━━━━━━━━━━━━━━━━━━
CEVAP: A) K + 1
━━━━━━━━━━━━━━━━━━━━━━━━━━━
TEMEL KAVRAMLAR:
1. Etkisiz Eleman Mantığı
- Tanım: 0^3 = 0 olduğu için 0 sayısının küpünün toplama dahil edilmesi toplam değerini değiştirmez.
- Bu problemde: Başlangıçtaki 1 değeri toplama doğrudan eklenir ve sonuç K + 1 olur.
Benzer algoritma ve akış şeması sorularıyla pratik yapmak ister misin?