PHP · 3/8
Koşullar: karar vermek
Koşulun sonucuna göre farklı akışlar çalıştırmak ve sınır değerleri test etmek.
Önerilen çalışma: 25–45 dakika; örnekleri kendin uygula. Süre kişiye göre değişir.
Bu sayfada · 9 başlık
Başlamadan önce
Önceki dersteki örneği çalıştırmış olman ve dosya/çıktı ayrımını biliyor olman yararlı.
Öğrenme sırası: konuyu oku → çıktıyı tahmin et → örneği değiştir → alıştırmayı çöz → cevabını gerekçelendir.

Videoyla adım adım izle
Türkçe açıklamalı sessiz görsel anlatım. Sesli ders veya kesintisiz ekran kaydı değildir. Duraklatıp kendi ortamında uygula.
Video bölümleri ve tam metin
Koşullar: karar vermek
Koşulun sonucuna göre farklı akışlar çalıştırmak ve sınır değerleri test etmek.
Kavramı kur
Koşul, bir soruya doğru veya yanlış cevabı veren ifadedir. “Puan en az 50 mi?” gibi bir soruyu karşılaştırma operatörüyle yazarız. if doğruysa bir blok, else varsa yanlış durumda başka bir blok çalışır. Programın hangi yolu izleyeceğini girdiler belirler; metin olarak “doğru” yazdırmak koşulun kendisi değildir.
Neden böyle çalışıyor?
Karşılaştırmada sınır noktaları önemlidir. puan > 50 ile puan >= 50 aynı değildir: 50 değeri ilkinde dışarıda, ikincisinde içeridedir. Kuralı doğal dille yazıp koddaki işaretle eşleştir. Ardından sınırın bir altı, sınırın kendisi ve bir üstü için sonucu ayrı ayrı tahmin et.
Çalışma sırası
Bir örneğin tek bir değerle çalışması bütün olasılıkları kapsadığı anlamına gelmez. Küçük bir test tablosu yap: girdi, beklenen dal, gözlenen çıktı. Birden fazla koşul eklediğinde sıranın etkisini düşün; ilk doğru dal, sonraki dallara geçilmesini engelleyebilir. Her koşulun kapsadığı aralığı açık tut.
İkinci örnek · 1
puan karşılaştırmanın girdisidir. Kodun tamamı yazılı derste bulunur.
Kod
<?php
$puan = 50;
if ($puan >= 50) {
echo "Geçti\n";
} else {
echo "Tekrar dene\n";
}Beklenen sonucu oku
Karşılaştırma değeri gözlemler; atama ile karıştırılmamalıdır.
Beklenen çıktı: Geçti
Bir değeri sen değiştir
49, 50 ve 51 değerleri için beklenen sonucu bir tabloya yaz. Karşılaştırmayı > yapıp yalnızca sınır değerde neyin değiştiğini kontrol et.
Hata nereden gelir?
Atama ile karşılaştırmayı karıştırmak programın anlamını değiştirebilir; operatörün dildeki görevini kontrol et.
Kendi çözümünü kur
80 ve üstü için ayrı bir mesaj ekle; en yüksek aralığı önce değerlendir. “En az” ifadesi eşitliği de kapsar. Teste yalnızca ortadaki değerle başlama.
Çözüm varyasyonu · 1
Önce kendi denemeni yap; sonra bu varyasyonun girdileri ile sonucunu karşılaştır.
Kod
<?php
$puan = 49;
if ($puan >= 50) {
echo "Geçti\n";
} else {
echo "Tekrar dene\n";
}Kendini kontrol et
“En az 50” kuralı için 50 puanı hangi dalda değerlendirilmelidir? Yanıt: Başarılı/geçerli dalda; kural eşitliği de kapsar. Bu nedenle uygun karşılaştırma >= 50 olur.
Beklenen çıktı: Tekrar dene
Konu anlatımı
Koşul, bir soruya doğru veya yanlış cevabı veren ifadedir. “Puan en az 50 mi?” gibi bir soruyu karşılaştırma operatörüyle yazarız. if doğruysa bir blok, else varsa yanlış durumda başka bir blok çalışır. Programın hangi yolu izleyeceğini girdiler belirler; metin olarak “doğru” yazdırmak koşulun kendisi değildir.
Karşılaştırmada sınır noktaları önemlidir. puan > 50 ile puan >= 50 aynı değildir: 50 değeri ilkinde dışarıda, ikincisinde içeridedir. Kuralı doğal dille yazıp koddaki işaretle eşleştir. Ardından sınırın bir altı, sınırın kendisi ve bir üstü için sonucu ayrı ayrı tahmin et.
Bir örneğin tek bir değerle çalışması bütün olasılıkları kapsadığı anlamına gelmez. Küçük bir test tablosu yap: girdi, beklenen dal, gözlenen çıktı. Birden fazla koşul eklediğinde sıranın etkisini düşün; ilk doğru dal, sonraki dallara geçilmesini engelleyebilir. Her koşulun kapsadığı aralığı açık tut.
PHP’de == bazı tür dönüşümleriyle, === ise tür ve değer birlikte değerlendirilerek eşitlik sınar. Burada tam sayı puan için >= yeterlidir. Gerçek kullanıcı girdisinde bu varsayımın doğru olduğunu ayrıca doğrulaman gerekir; örnek validasyon yerine geçmez.
İlk örneği oku ve dene
Koşullar: karar vermek
Program bir koşulu kontrol eder: koşul doğruysa ilk bloğu, değilse else bloğunu çalıştırır. Günlük hayattaki "eğer ... ise" cümlesinin aynısı. Koşul parantez ( ) içine, çalışacak kod süslü parantez { } içine yazılır.
<?php
$sicaklik = 30;
if ($sicaklik > 25) {
echo "Hava sıcak, şort giy!";
} else {
echo "Hava serin, mont al.";
}
▶ Sonuç
Hava sıcak, şort giy!
Adım adım neden böyle çalışıyor?
- puan karşılaştırmanın girdisidir.
- >= 50 sınır değeri de geçerli kabul eder.
- if bloğu doğru durumda, else bloğu yanlış durumda çalışır.
- Karşılaştırma değeri gözlemler; atama ile karıştırılmamalıdır.
İkinci çözümlü örnek
Koşulun sonucuna göre farklı akışlar çalıştırmak ve sınır değerleri test etmek.
<?php
$puan = 50;
if ($puan >= 50) {
echo "Geçti\n";
} else {
echo "Tekrar dene\n";
}
▶ Sonuç
Geçti
Kolaydan zora sen dene
- 49, 50 ve 51 değerleri için beklenen sonucu bir tabloya yaz.
- Karşılaştırmayı > yapıp yalnızca sınır değerde neyin değiştiğini kontrol et.
- 80 ve üstü için ayrı bir mesaj ekle; en yüksek aralığı önce değerlendir.
İpucunu aç
“En az” ifadesi eşitliği de kapsar. Teste yalnızca ortadaki değerle başlama.
Üç görevin açıklamalı çözümünü oku
- 49 için tekrar, 50 ve 51 için geçti sonucu beklenir. Test tablosuna üçünü ayrı satır yaz.
- > 50 kullandığında yalnızca 50 sınırı başarısız dala geçer; 51 yine başarılıdır.
- Önce puan >= 80, sonra puan >= 50, en sonda else değerlendir. Genel >=50 dalını önce koyarsan 80 üstünü de o dal yakalar.
Bir çözüm varyasyonu gör
Çözüm varyasyonu
Önce kendi görevlerini dene. Bu varyasyonda girdi ve sonuçları karşılaştır.
<?php
$puan = 49;
if ($puan >= 50) {
echo "Geçti\n";
} else {
echo "Tekrar dene\n";
}
▶ Sonuç
Tekrar dene
Yaygın hata ve çözümü
- Atama ile karşılaştırmayı karıştırmak programın anlamını değiştirebilir; operatörün dildeki görevini kontrol et.
- Aralıkları yanlış sıraya koymak daha özel bir dalın hiç çalışmamasına yol açabilir.
Kendini değerlendir
Ezberlemeden açıklayabiliyor musun?
“En az 50” kuralı için 50 puanı hangi dalda değerlendirilmelidir?
Açıklamalı yanıt
Başarılı/geçerli dalda; kural eşitliği de kapsar. Bu nedenle uygun karşılaştırma >= 50 olur.
Kendi çözümünde bir girdiyi değiştir. Çalıştırmadan önce beklenen sonucu yaz; gerçek sonuçla karşılaştır ve fark varsa hangi satırdan kaynaklandığını açıkla.
Kaynak ve çalışma ortamı
Örnekler küçük öğretim senaryolarıdır. Java/C#/PHP/Swift çalışma ortamını kendi cihazında ayrıca doğrula; yazılı sonuçlar beklenen davranışı açıklar.
Resmî dil belgeleriBu içerik işine yaradı mı?
Görüşünü aşağıdan işaretleyebilir ve varsa notunu bırakabilirsin.