Ana Sayfa · Akademi · Robotik ve Kodlama · Scratch ile Programlama · Değişkenler ve Listeler

Değişkenler ve Listeler

Puan ve sayaç için değişken oluştur, güncelle ve listeye kısa bir giriş yap.

DERS PUSULASI

Bu sayfayı ne için kullanacaksın?

Ana fikir

Değişken, programın bir sayıyı ya da yazıyı hatırlamasını sağlayan bir kutudur; liste ise birden çok değeri sırayla saklayan uzun bir kutu takımıdır.

Üretilecek kanıt

Kendi tıklama oyununu iki değişkenle geliştir: puan ve tıklama adında iki değişken oluştur ve ikisini de sahnede göster. Yeşil bayrağa basınca ikisini de 0 yap. Kuklaya her tıklandığında tıklama değişkenini 1 kadar değiştir. Bir koşul ekle: eğer tıklama sayısı 3’e bölünüyorsa puan değişkenini 5 kadar, değilse 1 kadar değiştir. Oyunu yeşil bayrakla birkaç…

Kontrol tuzağı

“yap” yerine “kadar değiştir” kullanmak (veya tersi) Oyun başında puan değişkenini 1 kadar değiştir yazarsan puan her oyunda bir önceki değerin üstüne eklenir ve sıfırdan başlamaz. Başlangıç için her zaman ... yap bloğunu kullan. Puanı sıfırlamayı unutmak Yeşil bayrak bloğunda puan değişkenini 0 yap yoksa, ikinci…

Sonraki bağlantı

Mesaj Yayınlama ve Sahne Yönetimi: Kuklaların birbirine haber gönderip sahneleri değiştirdiği, birden çok bölümden oluşan projeler.

Modül kaynakları: Python Tutorial · Arduino Learn

SeviyeBaşlangıç
Yaş10–16
Süre30–45 dk
Ön koşulDöngüler
İçerikStandart ders · 1.478 kelime
Son güncelleme

Bir cümlelik özet

Değişken, programın bir sayıyı ya da yazıyı hatırlamasını sağlayan bir kutudur; liste ise birden çok değeri sırayla saklayan uzun bir kutu takımıdır.

Neden önemli?

Bir önceki derste döngülerle aynı adımları tekrar tekrar çalıştırdık. Ama çoğu oyunda program bir şeyi hatırlamak zorundadır: kaç puan topladın, kaç can kaldı, hangi bölümde olduğun.

Scratch bu bilgiyi ekranda kendiliğinden tutmaz. Biz ona “şu sayıyı bir yerde sakla ve ben istediğimde değiştir” demeliyiz. İşte bu saklama kutusuna değişken denir.

Değişkenleri öğrendiğinde artık sadece hareket eden bir karakter değil, puan sayan, seviye atlayan, geri sayım yapan gerçek oyunlar kurabilirsin. Bu yüzden değişkenler, ilk basit animasyondan ilk gerçek oyuna geçişin anahtarıdır.

Değişken nedir?

Değişken, içine bir değer koyabildiğimiz ve o değerin sonradan değişebildiği isimli bir kutudur. Kutunun bir adı vardır (örneğin puan) ve içinde bir değer bulunur (örneğin 0).

Scratch'te değişken oluşturmak için Değişkenler (Variables) kategorisine gidip “Bir değişken oluştur” düğmesine basarız. Değişkene açık bir isim veririz: puan, can, süre gibi.

“Yap” ve “kadar değiştir” arasındaki fark

Değişkenler kategorisinde iki temel blok vardır ve bunları karıştırmak çok yaygındır:

Bir örnekle görelim. Oyun başında puanı sıfırlamak isteriz:

yeşil bayrağa tıklandığında
puan değişkenini 0 yap

Oyun sırasında her doğru harekette puanı bir artırmak isteriz:

bu kukla tıklandığında
puan değişkenini 1 kadar değiştir

Buradaki fark önemlidir: yap sabit bir değer atar, kadar değiştir ise var olan değeri artırır veya azaltır. Azaltmak için negatif sayı kullanırız: can değişkenini -1 kadar değiştir.

Değişkeni sahnede gösterme

Her değişkenin yanında küçük bir onay kutusu vardır. Bu kutuyu işaretlersen değişkenin adı ve değeri sahnenin köşesinde görünür. Örneğin oyuncu ekranda puan: 7 yazısını canlı olarak görür.

Kutunun işaretini kaldırırsan değişken hâlâ çalışır, sadece ekranda görünmez. Puanı oyuncuya göstermek istiyorsak onay kutusunu açık bırakırız.

İlk oyun: Her tıklamada puan artan oyun

Şimdi öğrendiklerimizi küçük bir oyunda birleştirelim. Amaç basit: ekranda bir hedefe her tıkladığında puan bir artsın.

Adım adım kurulum

  1. Değişkenler kategorisinden puan adında bir değişken oluştur.
  2. Sahnede görünmesi için puan değişkeninin onay kutusunu işaretle.
  3. Bir kukla seç (örneğin bir elma ya da yıldız).
  4. Aşağıdaki iki blok yığınını kur.

Oyun başında puanı sıfırla:

yeşil bayrağa tıklandığında
puan değişkenini 0 yap

Kuklaya her tıklandığında puanı artır ve küçük bir tepki ver:

bu kukla tıklandığında
puan değişkenini 1 kadar değiştir
Miyav sesini çal
0.1 saniye 1.2 kat büyü
0.1 saniye bekle
normal boyuta dön

Yeşil bayrağa bastığında puan 0 olur. Elmaya her tıkladığında puan bir artar ve elma kısa bir an büyüyüp küçülerek tepki verir. İşte bu, senin ilk puan sayan oyunun.

Oyunu zorlaştırmak: geri sayım

Gerçek oyunlarda sınırlı süre vardır. İkinci bir değişken ekleyelim: süre.

yeşil bayrağa tıklandığında
süre değişkenini 20 yap
20 kez tekrarla
  1 saniye bekle
  süre değişkenini -1 kadar değiştir
"Süre bitti" de

Burada döngü dersinden gelen tekrar yapısını değişkenle birleştirdik. Süre her saniye bir azalır; sıfıra ulaşınca oyun biter. İki değişken (puan ve süre) aynı anda çalışır: biri artar, biri azalır.

Listeye kısa giriş

Bazen tek bir değer yetmez. Örneğin bir sınav oyununda birçok soru ya da bir yüksek skor tablosunda birçok oyuncu adı saklaman gerekir. Her biri için ayrı değişken açmak çok zahmetlidir.

Liste, birden çok değeri sırayla saklayan bir kutu takımıdır. Listedeki her değere öğe denir ve her öğenin bir sıra numarası vardır: 1. öğe, 2. öğe, 3. öğe…

Scratch'te liste oluşturmak için yine Değişkenler kategorisinde “Bir liste oluştur” düğmesine basarız. Örneğin isimler adında bir liste açalım.

Öğe ekleme ve silme

Liste blokları arasında en çok kullanacağın ikisi şunlardır:

Örnek: Oyuncu adlarını bir listeye toplayalım.

yeşil bayrağa tıklandığında
isimler listesinin tümünü sil
Ada öğesini isimler listesine ekle
Bora öğesini isimler listesine ekle
Ceren öğesini isimler listesine ekle

Bu bloklar çalıştığında liste şu hâle gelir: 1. Ada, 2. Bora, 3. Ceren. isimler listesinin uzunluğu bloğu ise sana listede kaç öğe olduğunu (burada 3) söyler.

Bir öğeyi silmek istersen:

isimler listesinden 2 numaralı öğeyi sil

Artık listede sadece Ada ve Ceren kalır. Değişken tek bir değer tutar; liste ise bir sürü değeri düzenli bir sırayla tutar. İkisi de bilginin hafızada saklanmasını sağlar.

Mini uygulama

Kendi tıklama oyununu iki değişkenle geliştir:

  1. puan ve tıklama adında iki değişken oluştur ve ikisini de sahnede göster.
  2. Yeşil bayrağa basınca ikisini de 0 yap.
  3. Kuklaya her tıklandığında tıklama değişkenini 1 kadar değiştir.
  4. Bir koşul ekle: eğer tıklama sayısı 3’e bölünüyorsa puan değişkenini 5 kadar, değilse 1 kadar değiştir.
  5. Oyunu yeşil bayrakla birkaç kez test et ve puanın beklediğin gibi arttığını doğrula.

Bittiğinde kendine sor: 6 kez tıkladığımda puan kaç olmalı? Gerçekten o kadar mı oldu?

Uygulama laboratuvarı: Değişkenler ve Listeler

Değişkenler ve Listeler konusunu kalıcı hâle getirmenin en iyi yolu, kavramı küçük ve ölçülebilir bir göreve dönüştürmektir. Bu çalışmada Değişken nedir? ile Değişkeni sahnede gösterme arasındaki ilişkiyi kullanarak çalışan bir Scratch sahnesi, blok düzeni ve test listesi hazırlayacaksın. Amaç yalnız sonucun çalışması değil; hangi kararı neden verdiğini, neyi test ettiğini ve hangi durumda tasarımı değiştireceğini açıklayabilmektir.

Görev senaryosu

Şu senaryoyu ele al: bir robotun görevleri doğru sırada tamamladığı simülasyon. Dersin ana hedefi “Puan ve sayaç için değişken oluştur, güncelle ve listeye kısa bir giriş yap” olduğuna göre önce problemi tek cümleyle tanımla. Ardından sistemin alacağı girdiyi, uygulayacağı işlemi ve üreteceği çıktıyı ayrı ayrı yaz. Bilmediğin bir ayrıntı varsa onu varsayım olarak işaretle; varsayımı gerçek bilgi gibi kullanma.

  1. Planla: Başlangıç durumunu, beklenen sonucu ve kullanacağın kavramları yaz.
  2. En küçük sürümü kur: Yalnız temel davranışı çalıştır; süsleme ve ek özellikleri sonraya bırak.
  3. Üç test hazırla: Normal bir durum, sınırda bir durum ve hatalı ya da beklenmeyen bir durum seç.
  4. Sonucu kaydet: Beklenen ile gerçekleşeni yan yana yaz; fark varsa olası nedeni belirt.
  5. Tek değişiklik yap: Aynı anda birçok şeyi değiştirmek yerine bir kararı düzeltip testi yeniden çalıştır.

Başarı ölçütleri

“Değişkenler ve Listeler” çalışmasını bitirdiğinde ürünü bir arkadaşına yalnız bölüm başlıklarıyla anlat. Arkadaşın bir robotun görevleri doğru sırada tamamladığı simülasyon senaryosundaki adımları ve karar nedenlerini takip edebiliyorsa anlatım yeterince açıktır. Anlaşılmayan noktayı daha fazla terim ekleyerek değil, Değişken nedir? ve Değişkeni sahnede gösterme ilişkisini daha küçük adımlara bölerek düzelt.

Sık yapılan hatalar

“yap” yerine “kadar değiştir” kullanmak (veya tersi)

Oyun başında puan değişkenini 1 kadar değiştir yazarsan puan her oyunda bir önceki değerin üstüne eklenir ve sıfırdan başlamaz. Başlangıç için her zaman ... yap bloğunu kullan.

Puanı sıfırlamayı unutmak

Yeşil bayrak bloğunda puan değişkenini 0 yap yoksa, ikinci oyunda puan bir öncekinin kaldığı yerden devam eder. Her oyunu temiz başlatmak için değişkenleri sıfırla.

Listeyi temizlemeyi unutmak

Oyun her başladığında listeye yeniden öğe eklersen, birkaç denemeden sonra listede aynı isimler defalarca birikir. Önce ... listesinin tümünü sil bloğunu kullan.

Anlamsız isim vermek

degisken1 gibi bir isim ne işe yaradığını hatırlatmaz. puan, can, süre gibi açık isimler seçersen kodun kendini anlatır.

Güvenlik notu

Scratch ekran başında çalışılan bir uygulamadır. Uzun süre aralıksız ekrana bakmamak için her 30 dakikada bir kısa mola verip gözlerini dinlendir. Projelerini paylaşırken gerçek soyadını, okulunu, adresini veya telefon numaranı değişken ya da liste içine yazma; bunun yerine yalnızca takma ad kullan. İnternette proje paylaşmadan önce bir yetişkine danış.

Ders özeti

Kontrol soruları

  1. Değişken nedir ve neden kullanırız?
  2. puan değişkenini 0 yap ile puan değişkenini 0 kadar değiştir arasındaki fark nedir?
  3. Bir değişkenin değerini oyuncunun ekranda görmesini nasıl sağlarız?
  4. can başlangıçta 3 iken can değişkenini -1 kadar değiştir bloğu iki kez çalışırsa can kaç olur?
  5. Liste ile değişken arasındaki temel fark nedir?

Cevaplar

  1. Değişken, bir değeri (sayı ya da yazı) hafızada saklayan isimli bir kutudur. Programın puan, can, süre gibi bilgileri hatırlamasını sağlamak için kullanırız.
  2. ... 0 yap değişkenin içindekini silip yerine 0 koyar. ... 0 kadar değiştir ise değere 0 ekler, yani değeri hiç değiştirmez.
  3. Değişkenler kategorisinde o değişkenin yanındaki onay kutusunu işaretleriz; böylece adı ve değeri sahnenin köşesinde görünür.
  4. can iki kez birer azalır: 3 → 2 → 1. Sonuç 1’dir.
  5. Değişken tek bir değer tutar; liste ise birden çok değeri sıralı öğeler hâlinde tutar ve her öğenin bir sıra numarası vardır.

Kaynak ve doğrulama notu

“Değişkenler ve Listeler” dersi için doğrulama odağı Değişken nedir? ile Değişkeni sahnede gösterme arasındaki ilişkinin örnekler üzerinde tutarlı çalışmasıdır. Blok adları Scratch’in güncel temel kategorileriyle uyumlu tutulmuştur. Proje davranışı; başlangıç, normal oyun, hata ve yeniden başlatma durumlarında ayrı ayrı denenmelidir.

Sonraki ders

Mesaj Yayınlama ve Sahne Yönetimi: Kuklaların birbirine haber gönderip sahneleri değiştirdiği, birden çok bölümden oluşan projeler.

Quiz’i BaşlatScratch ile Programlama bölümüne dön
SORU HAVUZU

Bu dersi 10 soruyla pekiştir

Bu ders için 20 soruluk bir havuz hazırlandı. Her başlangıçta 10 soru ve seçenekler yeniden karıştırılır.