avatar
enesdayi
1968 puan • 36 soru • 229 cevap
✔️ Cevaplandı • Doğrulandı

Scratch ile döngüler (Sürekli tekrarla, ... defa tekrarla)

Scratch'te "sürekli tekrarla" ile "...
defa tekrarla" blokları arasındaki farkı tam anlayamadım. Hangi durumda hangisini kullanmam gerektiğini karıştırıyorum. Örneğin bir karakteri sürekli hareket ettirirken mi, yoksa belirli sayıda işlem yaptırırken mi hangi bloğu seçmeliyim?
WhatsApp'ta Paylaş
1 CEVAPLARI GÖR
✔️ Doğrulandı
0 kişi beğendi.
avatar
Çalışkan Kalem
105 puan • 49 soru • 32 cevap
Scratch ile Döngüler - Sürekli ve Belirli Sayıda Tekrar

🎯 Scratch ile Döngüler: "Sürekli Tekrarla" ve "... Defa Tekrarla"

Merhaba! Bu ders notumuzda, programlamanın en temel ve güçlü yapı taşlarından biri olan döngüleri (loops) Scratch üzerinden öğreneceğiz. Döngüler, bir dizi işlemi tekrar tekrar yaptırmamızı sağlayan bloklardır. Bugün özellikle iki önemli döngü bloğunu inceleyeceğiz: "Sürekli Tekrarla" ve "... Defa Tekrarla".

🔄 Döngü Nedir? Neden Kullanırız?

Döngü, belirli bir işlemi otomatik olarak tekrarlayan bir yapıdır. Örneğin, bir karakteri 10 adım ileri yürütmek için 10 kere "10 adım ileri git" bloğunu kullanmak yerine, bir döngü içine "10 adım ileri git" bloğunu koyup 10 defa tekrarlatabiliriz. Bu bize:

  • Kod tekrarını azaltır (Daha temiz kod).
  • Zaman kazandırır.
  • Karmaşık ve tekrarlı animasyon/oyun mekaniklerini kolayca yazmamızı sağlar.

1. 🔁 "Sürekli Tekrarla" Döngüsü

"Kontrol" blokları menüsünde bulunan bu blok, içine yerleştirdiğimiz tüm komutları durmaksızın, sonsuza kadar tekrarlar. Genellikle ana oyun döngüsü veya sürekli kontrol gerektiren durumlar için kullanılır.

📝 Kullanım Alanları ve Örnek:

  • 🎮 Bir karakteri sürekli hareket ettirmek:
    • Sürekli tekrarla bloğunun içine "10 adım git" ve "Bir sonraki kostüme geç" bloklarını koyarsak, karakter sürekli yürüyormuş gibi görünür.
  • 🎯 Sürekli kontrol sağlamak:
    • "Eğer ok tuşuna basılıysa, dön" gibi bir kontrolü sürekli tekrarla içine koyarak, kullanıcı girişini sürekli dinleyebiliriz.

⚠️ Dikkat: Bu döngüyü durdurmak için ya "Durdur" butonuna basmak ya da bir "durdur" komutu içeren başka bir kontrol mekanizması (örneğin "eğer kenara değdiysen, durdur") kurmak gerekir.

2. 🔢 "... Defa Tekrarla" Döngüsü

Bu blok ise, içindeki komutları belirlediğimiz sayı kadar çalıştırır. Sayma işlemi bittiğinde döngü kendiliğinden sonlanır ve program bir sonraki bloğa geçer.

📝 Kullanım Alanları ve Örnek:

  • Belirli sayıda işlem yaptırmak:
    • Bir kare çizmek için "100 adım git" ve "90 derece dön" komutlarını 4 defa tekrarla bloğunun içine koyarız.
  • 🔢 Matematiksel hesaplamalar:
    • 1'den 10'a kadar sayıları toplamak için bir "toplam" değişkeni oluşturup, döngüyü 10 defa çalıştırabiliriz. Her turda değişkeni artırarak toplamı buluruz. (Matematiksel olarak: \( toplam = \sum_{i=1}^{10} i \) )
  • 🌟 Animasyon efektleri:
    • Bir sprite'ın rengini 10 defa değiştirerek yanıp sönme efekti verebiliriz.

🆚 İki Döngünün Karşılaştırması

  • "Sürekli Tekrarla": Sonsuz döngü. Durdurulana kadar çalışır. Oyun ana döngüsü, sürekli arka plan müziği için idealdir.
  • "... Defa Tekrarla": Sonlu döngü. Belirli bir sayıda (ör. 5, 10, 100) çalışır ve durur. Belirli sayıda adım atma, şekil çizme, liste elemanlarını sırayla işleme için idealdir.

🎨 Pratik Proje Fikri: Poligon Çizici

İki döngüyü de anlamak için basit bir proje yapalım:

  1. Yeni bir sprite (kalem) oluştur.
  2. "Kalemi bastır" bloğunu kullan.
  3. "10 defa tekrarla" bloğunu ekle ve sayıyı 6 yap.
  4. Döngünün içine "100 adım git" ve "60 derece dön" bloklarını yerleştir.
  5. Yeşil bayrağa tıkla! 🚩 Sprite'ın bir altıgen çizdiğini göreceksin. Döngü sayısını ve dönüş açısını değiştirerek farklı şekiller (kare, üçgen) elde edebilirsin.

Formül İpucu: Düzgün bir çokgen çizmek için dönüş açısı \( \frac{360}{kenar\ sayısı} \) formülü ile bulunur. Altıgen için \( \frac{360}{6} = 60 \) derece.

📚 Özet

  • 🔄 Sürekli Tekrarla: Sonsuz döngü. Durma komutu gerektirir.
  • 🔢 ... Defa Tekrarla: Belirli sayıda tekrar. İşi bitince kendiliğinden durur.
  • ⚡ Döngüler, kodumuzu daha kısa, daha okunabilir ve daha verimli hale getirir.
  • 💡 Kendi oyun ve animasyonlarında bu blokları bol bol deneyerek ustalaş!

Bir sonraki derste, bu döngüleri "eğer" blokları ve değişkenlerle birleştirerek daha interaktif projeler yapacağız. Kendi başına denemeler yapmayı unutma! 👨‍💻👩‍💻

Yorumlar