CEIT 440 2. Hafta
Adım Adım Kodlar (bloklar) Ne Yapıyor? Bu hafta temel olarak geçen hafta yaptığımız uygulamaların üzerinde adım adım bir kez daha geçeceğiz. Sunumun sonunda birkaç temel algoritma örneği vardır. Bunları çözümlerine bakmadan kendiniz çözmeye çalışın lütfen. Sonraki slaytta çözümlerini bulabilirsiniz.
Adım Adım Kodlar (bloklar) Ne Yapıyor? Doodle ÇizimTuvali (Drawing Canvas) sürüklendiğinde: ÇizimTuvali.ÇizgiÇiz( DrawingCanvas.DrawLine) son dokunulan X ve Y koordinatları ile dokunulan bir önceki noktanın X ve Y koordinatları arasına bir çizgi çizmektedir.
Adım Adım Kodlar (bloklar) Ne Yapıyor? Ball Bounce Top nesnesi (ball) fırlatıldığında topun hızını ve yönünü fırlatma hareketine göre alıyor. Farklı uygulamalarda hız ve yön matematiksel formüllerle de desteklenebilir.
Adım Adım Kodlar (bloklar) Ne Yapıyor? Top kenarlardan birine ulaştığında «kenarı al/algıla» anlamına gelen blok kullanılır. Böylece top kenara çarpıp çarpma açısına göre sekmektedir.
Adım Adım Kodlar (bloklar) Ne Yapıyor? Score (oyun skorumuzu depolamaya ve göstermeye yarayacak) adlı bir değişken tanımlıyoruz Belirlenen süre (ör. Saniyede 1 kere) aralığında MoveMole isimli prosedürü (fonksiyonu) çalıştırıyor.
Adım Adım Kodlar (bloklar) Ne Yapıyor? MoveMole fonksiyonu ise Mole isimli «sprite»’ın (2 boyutlu resim veya animasyon) X ve Y koordinatlarını (yani konumunu) rastgele bir yere ayarlamasını sağlıyor. Mole’un koordinatı şöyle hesaplanıyor:
(0-1 arasında rastgele üretilen bir gerçel sayı) X Çizim alanı genişliği – Resmin genişliği Bu blok her çalıştığında köstebek resmi çizim alanı içinde rastgele bir alanda belirir. Çıkarma işleminin amacı ise resmin çizim alanı dışında bir koordinata gönderilmesini önlemektir.
Bu blokta Mole «sprite»ına dokunulduğunda olacaklar listelenmiştir Bu blokta Mole «sprite»ına dokunulduğunda olacaklar listelenmiştir. Sırasıyla: Score değişkenini 1 arttırıyor 100 ms boyunca telefonu titretiyor. UpdateScore fonksiyonunu (prosedürünü) çalıştırıyor (sonraki slaytta açıklanacak) MoveMole fonksiyonunu (prosedürünü) çalıştırıyor (önceki slaytta açıklanmıştı)
Reset tuşuna basıldığında «Score» değişkenini 0’a eşitleyip UpdateScore fonksiyonunu çalıştırıyor.
Sahneye eklenen «Label»ın metnini «Score:» yanına «Score değişkenini yazıyor. Join bloğu birden fazla text ve değişkeni birleştirmeye yaramaktadır.
Algoritma Örnekleri 1 – Çay Demleme
Algoritma Örnekleri-2 Bir okuldaki 35 öğretmenin maaşlarını okuyup maaş toplamını ekrana yazdıran algoritma ve akış şemasını hazırlayınız. Lütfen sonraki slayta geçmeden problemi algoritma basamakları ve akış şeması olarak çizmeye çalışın.
Algoritma Örnekleri - 2 1) Başla 2) TM = 0 3) S = 0 4) Maas‟ı oku 5) TM = TM+ Maas 6) S = S +1 7) Eğer S < 35 ise git 4 8) Yaz TM 9) Dur
Algoritma Örnekleri - 2
Algoritma Örnekleri-3 Klavyeden girilecek n tane sayının ortalamasını alan algoritma ve akış şemasını hazırlayınız Lütfen sonraki slayta geçmeden problemi algoritma basamakları ve akış şeması olarak çizmeye çalışın.
Algoritma Örnekleri-3 1. Başla 2. T = 0 3. N „ i oku 4. I = 1 5. Eğer I >= N ise Git 6, değilse git 10 6. Sayi oku 7. T = T + Sayi 8. I = I + 1 9. Git 5 10. Ort = T / N 11. Yaz Ort 12. Dur
Algoritma Örnekleri - 3
App Inventor ile… Kağıt üzerinde 10 dan geriye sayan bir program hazırlayınız (tasarım çizimi ve blockları kullanarak)