9. Sınıf Programlama Temelleri Dersi 1. Dönem 2. Yazılı Soruları ve Cevapları (Sadece Klasik-Örnek2)

(Toplam Puan: 100)

KAVRAMSAL VE TANIM SORULARI

Soru 1: Değişken, Sabit ve Veri Tipleri (15 Puan)

Programlamada değişken ve sabit kavramları arasındaki temel fark nedir? Bir program çalışırken değeri değişmesi mümkün olmayan bir bilgi için (örneğin $\pi$ sayısı) neden sabit tanımlaması tercih edilir? İki farklı temel veri tipini (liste, sözlük hariç) açıklayınız ve birer örnek veriniz.

Cevap:

  • Değişken: Program çalıştığı sürece değeri değiştirilebilen bellek alanıdır.
  • Sabit (Constant): Program çalıştığı sürece değeri kesinlikle değiştirilemeyen bellek alanıdır. Sabit tanımlaması, programın hata yapma riskini (yanlışlıkla $\pi$’nin değerini değiştirme gibi) ortadan kaldırdığı ve kodun okunurluğunu artırdığı için tercih edilir.
  • Veri Tipi Örnekleri (2 adet):
    • Tam Sayı (Integer): Ondalık kısmı olmayan sayılar (Örnek: $15$, $-4$).
    • Karakter Dizisi (String): Metinsel ifadeler, harfler ve kelimeler (Örnek: "Python").
    • Mantıksal (Boolean): Sadece Doğru (True) veya Yanlış (False) değerini alabilen tiptir (Örnek: True).

Soru 2: Operatörler ve Veri İşlemleri (15 Puan)

Programlamada kullanılan aritmetik operatörler ve ilişkisel (karşılaştırma) operatörler arasındaki temel amaç farkını açıklayınız. Her iki operatör grubundan da ikişer örnek veriniz.

Cevap:

  • Aritmetik Operatörler: Sayısal değerler üzerinde matematiksel işlemler (toplama, çıkarma, çarpma vb.) yapmak için kullanılır.
    • Örnekler: + (Toplama), * (Çarpma), % (Mod alma/Kalan bulma).
  • İlişkisel (Karşılaştırma) Operatörler: İki değeri birbirleriyle karşılaştırmak ve sonucunda Mantıksal (Boolean) bir değer (True veya False) üretmek için kullanılır.
    • Örnekler: == (Eşit mi?), > (Büyük mü?), != (Eşit değil mi?).

VERİ YAPILARI (LİSTELER VE SÖZLÜKLER) UYGULAMASI

Soru 3: Liste Uygulaması (Temel Fonksiyonlar) (20 Puan)

Programlamada Liste (Array/List) veri yapısı nedir? Kullanıcıdan alınan 3 adet şehir adını bir listeye ekleyen, listenin ilk elemanını ekrana yazdıran ve listeye sonradan “İzmir” şehrini ekleyen adımları içeren sözde kodu (Pseudocode) yazınız.

Cevap:

Liste Tanımı: Aynı veya farklı veri tiplerini bir arada, sıralı ve değiştirilebilir bir şekilde tutabilen, dinamik bir veri koleksiyonudur. Elemanlarına indeks numaraları ile erişilir.

Sözde Kod:

  1. Başla
  2. sehirler adında boş bir liste tanımla.
  3. FOR (i = 1; i <= 3; i = i + 1)
    • Kullanıcıdan bir şehir adı oku.
    • Okunan şehir adını sehirler listesine ekle (append).
  4. Ekrana “Listenin İlk Elemanı: “ yaz ve sehirler[0] değerini yazdır.
  5. sehirler listesine “İzmir” şehrini ekle (append).
  6. Bitir

Soru 4: Sözlük (Dictionary) Uygulaması (25 Puan)

Programlamada Sözlük (Dictionary) veri yapısı nedir? Listelerden farklı olarak hangi yöntemle verilere erişmeyi sağlar? Aşağıdaki verileri tutacak bir sözlük tanımlayınız ve sözlükten “Birim Fiyat” değerini ekrana yazdıran sözde kodu yazınız.

Anahtar (Key)Değer (Value)
Ürün Adı“Klavye”
Stok Kodu1453
Birim Fiyat450.50

Cevap:

Sözlük Tanımı: Verileri Anahtar (Key) ve Değer (Value) çiftleri halinde, sırasız olarak saklayan, dinamik bir veri yapısıdır.

Erişim Yöntemi: Sözlüklerde verilere, indeks numarası yerine tanımlanan Anahtar (Key) değerleri kullanılarak erişilir.

Sözde Kod:

  1. Başla
  2. urun adında bir sözlük tanımla ve aşağıdaki değerleri ata:
    • urun = { "Ürün Adı": "Klavye", "Stok Kodu": 1453, "Birim Fiyat": 450.50 }
  3. Ekrana “Birim Fiyat: “ yaz ve urun[“Birim Fiyat”] değerini yazdır.
  4. Bitir

Soru 5: Veri Tipi Seçimi ve Operatör Uygulaması (25 Puan)

Aşağıdaki görevi yerine getiren algoritmanın sözde kodunu yazınız. Bu görevde, kullanıcıdan alınan iki sayının çarpımının 100’den büyük olup olmadığını kontrol etmek için hangi tip operatörler kullanılmalıdır?

  • Kullanıcıdan sayi1 ve sayi2 değerlerini alınız.
  • Bu iki sayının çarpımını hesaplayınız.
  • Eğer çarpım sonucu 100’den büyük ise ekrana “Çarpım 100’ü Geçti” yazınız.
  • Aksi takdirde ekrana “Çarpım 100’ün Altında Kaldı” yazınız.

Cevap:

Kullanılacak Operatörler:

  1. Aritmetik Operatör (*): Çarpma işlemi için kullanılır.
  2. İlişkisel/Karşılaştırma Operatör (>): Çarpım sonucunun 100’den büyük olup olmadığını kontrol etmek için kullanılır.

Sözde Kod:

  1. Başla
  2. Kullanıcıdan sayi1 değerini oku.
  3. Kullanıcıdan sayi2 değerini oku.
  4. carpim = sayi1 * sayi2 işlemini yap.
  5. EĞER carpim > 100 İSE:
    • Ekrana “Çarpım 100’ü Geçti” yaz.
  6. DEĞİLSE (ELSE):
    • Ekrana “Çarpım 100’ün Altında Kaldı” yaz.
  7. Bitir

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir