Konu Anlatımı
Bu derste ne öğreneceğiz?
Bu derste Programlama konusunu önce ne işe yarar sorusundan başlatacağız, sonra çalışma mantığını açacağız. Amacı bilmek, komutun neden öyle yazıldığını anlamanın ilk adımıdır.
Dersten sonra şunları yapabiliyor olmanız gerekiyor:
- Kazanım 1: Değişken kavramını ve geçerli değişken adı kurallarını uygular.
- Kazanım 2: Temel veri türlerini (sayı, metin, mantıksal) ayırt eder.
- Kazanım 3: Koşul ifadeleriyle program akışına yön verir.
- Kazanım 4: for ve while döngülerinin kullanım yerlerini karşılaştırır.
- Kazanım 5: Verilen problem için adım adım basit bir program tasarlar.
Ön bilgi: bundan önce gördüğümüz
Bu konuya geçmeden önce Problem Çözme Kavramları ve Yaklaşımları konusunu bilmemiz gerekiyor. Problem Çözme Kavramları ve Yaklaşımları içindeki kavramlar bu derste doğrudan kullanılacak; aradaki bağı kurmadan sayısal işleme geçmek en sık yapılan hatadır.
- Problem Çözme Kavramları ve Yaklaşımları — bu derste kullandığımız temel kavram buradan geliyor.
- Gizlilik ve Güvenlik — bu derste kullandığımız temel kavram buradan geliyor.
Programlama Nedir?
Programlama, bir problemi çözmek için hazırlanan algoritmanın bir programlama dili kullanılarak bilgisayara anlatılmasıdır. İnsanın okuyup anlayabileceği algoritma ile makinenin çalıştırabildiği program arasındaki fark yalnızca sözcük dağarcığındadır: aynı mantık, farklı dillerde aynı sırayla yazılır. Bu yüzden önce mantık kurulur, sonra sözdizimi seçilir.
Değişken ve Veri Türleri
Değişken, veriyi saklamak için isimlendirilmiş bir kutudur. Değişken adı boşluk içermez, rakamla başlamaz ve içeriğini açıklayacak biçimde seçilir; büyük harf ile küçük harf ayrı anlamlara gelir. Bir değişkenin içindeki değer sonradan değiştirilebilir: notu = 65 yazısında notu kutusuna 65 değeri konmuştur.
| Veri Türü | Örnek | Kullanım |
|---|
| Sayı (tam sayı) | 25 | Adet, yaş, puan işlemleri |
| Sayı (ondalık) | 4,8 | Ortalama, uzunluk, ölçüm |
| Metin (dize) | 'Elif' | Ad, adres, mesaj |
| Mantıksal | Doğru / Yanlış | Karar durumları |
Koşul İfadeleri
Karar verilmesi gereken yerlerde koşul (if) yapısı kullanılır. Karşılaştırmalar iki eşittir ile yapılır: if notu >= 50: cümlesi puan 50 veya daha büyükse anlamına gelir. Şart sağlandığında girintili gövde çalışır, sağlanmazsa else: bloğundaki komutlar çalışır. Birden fazla ihtimal varken elif: ara kolu kullanılır.
Sınavda en sık karıştırılan nokta şudur: tek eşittir değeri ataşama yapar, iki eşittir karşılaştırma yapar. Koşul içinde her zaman iki eşittir kullanılır.
Döngüler
Aynı işin tekrar tekrar yapılması gereken yerde döngü kullanılır. for döngüsü tekrar sayısı bilinirken, while döngüsü koşul sağlandığı sürece devam ederken kullanılır. Sayacı güncellemeyi unutmak programı durdurmadığı için kaçak döngü denen sonsuz döngüye yol açar.
for i in range(3): → gövde 3 kez çalışır.while sayac < 10: → sayac 10 olana kadar devam eder.sayac = sayac + 1 → sayaç her turda 1 artar.
Adım Adım: Basit Bir Program Yazma
- Problem cümlesi çözüm basamaklarına çevrilir: puanı oku, koşulu kontrol et, sonucu yaz.
- Her veri için değişken seçilir:
puan = 75. - Koşul bloğu yazılır:
if puan >= 50: için geçer, aksi hâlde kalır. - Program çalıştırılır ve beklenen çıktı kontrol edilir.
Yazılan her programda önce girdi alınır, işlem yapılır ve çıktı verilir. Üçlü arasındaki denge programın doğru çalıştığının temelidir.
Sınav Odaklı Özet
Bu konudan gelen sorular çoğunlukla değişken adının geçerliliği, koşulun sonucu ve döngünün çıktısı biçimindedir. Döngü sorularında sayacı elle takip etmek, koşul sorularında sınır değerleri (50, 10 gibi eşikler) denemek en hızlı çözüm yoludur.
Değişken Adı ve Değişken Türü
Değişken adı, veriyi saklamak için isimlendirilmiş bir kutudur. Değişken adı boşluk içermez, rakamla başlamaz ve içeriğini açıklayacak biçimde seçilir. Örneğin, "notu" adlı değişken, 65 değerini saklar. Büyük harf ile küçük harf ayrı anlamlara gelir; bu nedenle değişken adı seçerken dikkatli olunmalıdır. Değişken türleri ise verinin niteliğini belirler; sayı, ondalık sayı, metin ve mantıksal değerlerdir. Bu türlerin doğru seçimi, programın doğru çalışmasını sağlar.
Değişkenlerin değerlerini değiştirmek için programlama dili kullanılır. Örneğin, "notu = 65" ifadesiyle notu değişkenine 65 değeri atılır. Değişken türleri, verinin nasıl saklanacağını ve nasıl işleneceğini belirler. Sayı türleri, tam sayı ve ondalık sayıları içerir; metin türleri ise karakter dizilerini temsil eder. Bu nedenle, değişken türünü doğru seçerek programın çalışmasını kolaylaştırabilirsiniz.
Günlük hayattan bir uygulama
Konuyu pekiştirmek için günlük hayattan bir uygulamaya bakmak gerekir. Aşağıdaki görev, Programlama bilgisini gerçek bir işin içinde kullandırmak için hazırlandı; çözerken hangi adımı nerede kullandığımızı not etmek faydalıdır.
Uygulama sorusu: Bir öğrencinin notunu saklayan değişkeni tanımlayınız ve bu not 50 ve üzerindeyse 'Geçti', değilse 'Kaldı' yazdıran programın adımlarını sırayla yazınız.
Bu görev için 15 puan dağıtılmıştır; puanlama anahtarı, cevabın hangi adımlarla gösterilmesi gerektiğini ayrıntılı biçimde söyler. Puanlamada işlem sırasının ve sonuç cümlenin ayrı ayrı sayıldığına dikkat et.
Sınıfta işe yarayan pratik notlar
- Değişken adı sorularında şıkları sırayla tara: rakam başta ve boşluk varsa o şık elenir.
- Koşul sorularında sınır değerleri (50, 10 gibi) doğrudan kodun içine koyup deneyerek şıkları kontrol et.
- Döngü sorularında sayaçı bir kâğıda yaz, her turda artır; elle takip çoğu soruyu tek adımda çözer.
- Çıktı sorularında döngünün kaç kez döndüğünü önce belirle, yazdırılan değerleri sonra sırala.
Adım adım çözülmüş örnekler
İki örnek üzerinde çalışacağız. İlk örnek kuralın temel kullanımını, ikinci örnek ise kuralın zorlayıcı bir durumunu gösterir. Adımları kendin yazmayı dene; ikinci adımda nerede durduğunu görmek, sınavda zaman kazanır.
Örnek 1: Değişken Tanımlama
Soru: Öğrencinin karne notunu saklayan değişkeni tanımlayınız ve bu değeri 65 olarak güncelleyiniz.
- Adım 1: Kutu seçilir ve açıklayıcı bir ad verilir: notu.
- Adım 2: Değere atama yapılır: notu = 65.
- Adım 3: Değişken ekrana yazdırılarak değerin saklandığı kontrol edilir.
Cevap: notu = 65 biçiminde tanımlanır; ekrana yazdırıldığında 65 değeri görünür.
Bu örnekte adım sayısını not edin: kural her zaman aynı sayıda işlemle değil, kazanılması gereken bilgiye göre çözülür.
Örnek 2: Koşul ile Karar Verme
Soru: Aldığı puanı 50 veya üzeri olan öğrenciyi geçer, diğerini kalır olarak gösteren koşul yapısını yazınız.
- Adım 1: Karar için gerekli veri değişkene atanır: puan = 75.
- Adım 2: Eşik değeri belirlenir ve koşul yazılır: if puan >= 50:.
- Adım 3: Sağlanmaz durum için else kolu eklenir ve program çalıştırılıp 75 için geçer çıktısı görülür.
Cevap: if puan >= 50: koşulu geçer, değilse kalır çıktısını verir; 75 puanında sonuç geçerdir.
Kavram karşılaştırma tablosu
Bu derste geçen terimler birbirine yakın durur ve sınavda karıştırılır. Aşağıdaki tabloda her terimin anlamı ve sık karıştırılan karşılığı yan yana verilmiştir.
| Kavram | Anlamı | Sık karıştırılan karşılığı |
|---|
| Değişken | Veriyi saklamak için isimlendirilmiş bir kutudur. Değişken adı boşluk içermez, rakamla başlamaz ve içeriğini açıklayacak biçimde seçilir; büyük harf… | Geçersiz değişken adı seçmek |
| Çıktı | Verilir. Üçlü arasındaki denge programın doğru çalıştığının temelidir. | Bu kavram için ayrı bir hata kaydı tutulmamış; tanımıyla ilgili uyarılar aşağıdaki bölümde. |
| Değişken adı boşluk içermez | Rakamla başlamaz ve içeriğini açıklayacak biçimde seçilir; | Bu kavram için ayrı bir hata kaydı tutulmamış; tanımıyla ilgili uyarılar aşağıdaki bölümde. |
| Değişken türleri | Verinin nasıl saklanacağını ve nasıl işleneceğini belirler. | Bu kavram için ayrı bir hata kaydı tutulmamış; tanımıyla ilgili uyarılar aşağıdaki bölümde. |
Kural, formül ve ölçü tablosu
Aşağıdaki tablo bu konudaki kuralları tek bakışta toplar. Karar verirken önce bu tabloya bakmak, kuralı hatırlamakta işe yarar.
| Kural ya da formül | Ölçü / birim | Örnek adımlarında geçiyor mu |
|---|
| Değişken = veri saklayan isimlendirilmiş bellek kutusu | Ölçü birimi yok (saf kural) | Evet — Örnek 1: Değişken Tanımlama |
| Değişken adı boşluk içermez, rakamla başlamaz ve açıklayıcı olmalıdır | Ölçü birimi yok (saf kural) | Evet — Örnek 1: Değişken Tanımlama |
| Koşul yapısı = if (eğer) + elif (değilse eğer) + else (değilse) | Ölçü birimi yok (saf kural) | Evet — Örnek 2: Koşul ile Karar Verme |
| Döngü seçimi: tekrar sayısı biliniyorsa for, koşul süreceğiyse while | Ölçü birimi yok (saf kural) | Evet — Örnek 2: Koşul ile Karar Verme |
| Artırım ifadesi: sayac = sayac + 1 | Ölçü birimi yok (saf kural) | Evet — Örnek 4: Sayacı ile Geçen Sayısını Bulma |
| Karşılaştırmalar: == eşittir,!= eşit değildir, >= büyük veya eşittir | Ölçü birimi yok (saf kural) | Örnek adımlarında sayısal olarak geçmiyor |
Sık Yapılan Hatalar
Aşağıdaki hatalar bu konuda en sık görülenlerdir. Her biri için önce hatanın kendisi, sonra neden yanlış olduğu ve doğrusu anlatılmıştır.
- Koşulda tek eşittir kullanmak: Tek eşittir değeri atama yapar, karşılaştırma değildir; koşul ifadelerinde iki eşittir kullanılmalıdır.
- While döngüsünde sayacı artırmamak: Sayaç güncellenmezse koşul sürekli doğru kalır ve program sonsuz döngüye girer.
- Geçersiz değişken adı seçmek: Rakamla başlamak, boşluk veya iki nokta üst üste içermek değişken adını geçersiz kılar.
- Girintiye dikkat etmemek: Gövde bloğu girintiyle belli olduğu için girinti kayınca kod ya hiç çalışmaz ya da yanlış blokta çalışır.
Özet
Kısaca: Programlama, çözümün bir bilgisayar dilinde yazılmasıdır. Değişkenler veriyi saklar, veri türleri verinin cinsini belirler, koşul yapıları karar verilmesini, döngüler ise tekrar eden işlerin otomatik yapılmasını sağlar. if-else ile karar, for-while ile tekrar yazılarak basit problemler çözülebilir; çözüm sonunda çıktı kontrol edilir.
Derste gördüğümüz ana fikirler şunlar:
- Program, algoritmanın bir programlama diliyle yazılan hâlidir; önce mantık kurulur, sonra kod yazılır.
- Tek eşittir atama yapar, iki eşittir karşılaştırma yapar; koşul içinde iki eşittir kullanılır.
- Python'da koşul ve döngü gövdesi girinti ile belirlenir; girinti kayarsa programın davranışı değişir.
- for döngüsü belirli sayıda, while döngüsü koşul sağlandığı sürece tekrar eder.
- Sayaç döngü içinde güncellenmezse program sonsuz döngüye girer.
- Çalışan programda sıra girdi almak, işlem yapmak ve çıktı vermektir.
Kendini dene
Aşağıdaki sorular konunun farklı yönlerini yoklar. Önce kendin çöz, sonra cevap anahtarına bak; eğer bir soruyu yanlış yaptıysan yukarıdaki ilgili bölüme geri dön.
- sayac değişkeni 2'den başlayıp her adımda 3 artmakta ve 10'u geçtiğinde durmaktadır. Döngü sayacın değerini yazdırırsa çıktı nedir? (Şıklar: 2, 3, 4, 5, 6, 7, 8, 9, 10 · 2, 5, 8, 11 · 2, 5, 8 · 2, 4, 6, 8, 10)
- Puanı 50 ve üzerinde olan öğrenciyi geçirmek için hangi koşul yazılmalıdır? (Şıklar: if notu < 50 · if notu > 50 · if notu >= 50 · if notu!= 50)
- Bir değişkenle ilgili aşağıdaki ifadelerden hangisi doğrudur? (Şıklar: Değişken yalnızca metin tutabilir · Değişken adı mutlaka rakamla başlamalıdır · Değişken adı boşluk içerebilir · Değişken, veri saklamak için isimlendirilmiş kutudur)
Cevap anahtarı: 1) 2, 5, 8 — Sayaç sırasıyla 2, 5, 8 değerlerini alır ve 11 olduğunda 10'u geçtiği için döngü durur; yazdırılan değerler 2, 5 ve 8'dir.
2) if notu >= 50 — 50 değeri de geçer sayıldığı için büyük veya eşit karşılaştırması gerekir: if notu >= 50. Sınırın dışarıda kaldığı > koşulu 50 puanını geçirmez.
3) Değişken, veri saklamak için isimlendirilmiş kutudur — Değişken, program çalışırken veriyi bellekte saklayan isimlendirilmiş kutudur; sayı, metin ve mantıksal değer tutabilir, adı rakamla başlayamaz ve boşluk içeremez.
İlgili konular
Bu konuyu öğrenmek şu başlıkları da kolaylaştırır. Aynı üniteden ve sonraki üniteden ikişer konu seçtik:
- Sunu ve Görselleştirme Programları — sonraki ünitenin başlangıcı; konuyu genişletir.
- İki Boyutlu Animasyon Programları — sonraki ünitenin başlangıcı; konuyu genişletir.
Kaynak notu
Bu derste Programlama konusu için kullanılan sayısal değerlerin tamamı adım adım gösterilerek hesaplandı; yaklaşık değer gereken yerde yaklaşık ifadesi açıkça yazıldı. Bu anlatım başka bir kitaptan cümle aktarmadan, konunun tanım ve kural düzeni yeniden yazılarak hazırlandı.
Ayrıca derste şu açık uçlu görevler yer alıyor; her biri puanlıdır ve kendi cevabını yazmanı ister:
- Bir öğrencinin notunu saklayan değişkeni tanımlayınız ve bu not 50 ve üzerindeyse 'Geçti', değilse 'Kaldı' yazdıran programın adımlarını sırayla yazınız. (15 puan)
- 1'den 10'a kadar olan çift sayıları ekrana yazdıran bir programın döngü adımlarını açıklayınız ve programın çıktısını yazınız. (10 puan)
- Bir sayının beş katının 12'ye eşit olduğu durumda sayıyı bulan programı sözde kodla adım adım yazınız. Girdi, işlem ve çıktı bölümlerini ayırınız, kullandığınız koşul ifadesini açıklayınız ve program… (20 puan)
- Bir kırtasiyecide 3 kalem 24 liraya, 5 defter 50 liraya satılmaktadır. Bu bilgilerden yararlanarak bir algoritma tasarlayıp yazınız? (15 puan)