code org Kurs 3 Ders 7 – 7.Arı: Koşullandırıcılar
Code.org atölyemizde bu kez code org Kurs 3 Ders 7 adlı bölümde sizlere programlamanın her alanında kullanılan koşullandırıcıları anlatmaya çalışacağız. Bu bölümde toplam 10 alt bölüm bulunmaktadır. Gelin şimdi koşullandırıcılar nedir? Nerelerde kullanılır? gibi sorulara cevap arayalım birlikte.
Bilgisayar programlamada koşullandırıcılar çok sık kullanılır. Bilgisayarlar karar veren akıllı cihazlar değildirler. Yani kendi iradeleri yoktur. Karar veremezler. Bu nedenle onlara bu bahsi geçen koşullandırıcılar sayesinde biraz olsun karar verme yeteneği yüklenebilir. Hatta kendi kendilerine bazen karar verdiklerinde, yapay zeka adını verdiğimiz kavram ortaya çıkar. Neyse çok kafamızı bulandırmadan konumuza devam edelim. Örneğin, yağmur yağdığı bir gün otomobilimizdeki yağmur sensörü nasıl çalışır? Koşullandırıcılar sayesinde takibi. Eğer yağmur yağıyorsa, silecek motorunu çalıştır, yağmur yağmıyorsa, çalıştırma vb. Şimdi code org’ daki konumuza dönelim.
code org Kurs 3 Ders 7 Cevapları ve Çözüm Adımları
Öncelikle bu Ders 7′ de sizi daha ilk bölümde bir tanıtıcı video karşılıyor. Koşullandırıcıların bu bölümde nasıl kullanılacağını anlatan ifadelerin bulunduğu bir video hazırlanmış. Sonrasında Ders 7′ nin 1.bölüme geçiliyor.
İlk bölümde bizden şunu istiyor. 3 adım ilerleyip, sonrasında ? ile gösterilen bir bulutun altında çiçek mi var? sorusuna bilgisayarın yanıt vermesini istiyor. Hatta çiçek varsa o çiçekteki nektarı arının almasını sağlamamız gerekiyor. Bunun için 3 adım ilerledikten sonra “eğer çiçekse nektarı al” cümlesini aslında kod blokları ile kuruyoruz.
Sıra geldi Resim 2′ deki bulmacamıza. Bu da aslında ilk uygulamadaki nin hemen hemen aynısı. Bunun için öncelikle 2 adım ilerliyoruz, sonrasında sağa dönüp bu kez yine 2 adım ilerleyecektir, ancak ilerlerken bu çiçekte nektar olup olmadığına bakacak ve öyle bir sonraki adıma geçecektir. bunun için gerekli kod bloğu aşağıda gösterilmiştir.
Resim 3′ deki Bölüm 3′ de arı sadece bal yapacak. Buna göre arı önce 2 adım ilerleyecek ve sonrasında petek olup olmadığını, eğer petek varsa bal yap komutunu uygulayacağız. Sonrasında sola dönecek ve yine 2 kez ilerleyecektir. Son olarak yine eğer petekse bal yap komutunu uygulayacağız. Bunu 7 satır’ da aşağıdaki içe içe döngü ile oluşturmamız mümkün görülmektedir.
Farklı Bir Koşullandırıcı Kullanma
Resim 4′ deki bu bölümde ilk defa soru işareti ile gösterilen bulutun altında “eğer çiçekse nektarı al” “DEĞİLSE YANİ PETEKSE BAL YAP” komutunu uygulayacağız. Daha önceki tüm örneklerimizde sadece “eğer şöyleyse böyle yap” komutunu uygulamıştık. Şimdi daha farklı bir blok olan “eğer petekse bal yap YA DA nektarı al” kod bloğunu kullanıyoruz. öncelikle 2 adım ilerliyor sonrasında bulutun altında neyin olduğunu bilmediğimiz için “eğer petekse bal yap YA DA nektarı al” kod bloğunu kullanıyoruz.
Bir önceki bölüm ile neredeyse aynı sorun mevcut. Ancak burada bir iç içe döngü kullanmamız gerekiyor çünkü bu işlemleri 9 satırda bitirmemiz gerekiyor. Bunun için döngüden hariç bir kez ilerliyoruz, sonrasında 3 adımda bir ilerleyen ve sonrasında sağa dönen bir döngü oluşturuyoruz. dikkat ederseniz bu işlemi 4 kez dış döngü sayesinde yapıyoruz ki karenin çevresini dolanabilelim. Sonrasında etrafı dolanırken, tüm soru işareti duraklarında “eğer çiçekse nektarı al ya da değilse bal yap” komutunu uyguluyoruz.
Bölüm 6′ da bu kez bizlere karışık kod blokları kod ekranında verilmiş. Bunları kullanarak anlamlı bir program yazıp sonuca ulaşmamız istenmiş. Bunun için tek bir ilerleme yapıyoruz ve sonrasında çiçekteki nektarları almamız gerekiyor. Ancak farklı bir durum var. Bu kez 3 veya daha az nektar olabileceği biliyor ve buna göre tüm nektarın toplanması şartımız. Bunun için “eğer nektar 0′ dan büyükse, yani 1-2-3 ise nektarı al” komutunu 3 kez uygulamamız gerekiyor.
Fonksiyon Kullanarak Koşullandırıcılar Kullanma
Bölüm 7′ de bir fonksiyon kullanmamızı istiyor. Daha önceki 2 derste (Ders 6 ve Ders 5) fonksiyonları size anlatmaya çalıştık. Burada aynı fonksiyonlardan birini kullanıyoruz. Bunun için “mor çiçeğe bak” fonksiyonu 3 kez eğer nektar 0 ‘ dan büyükse nektarı al kod bloklarını kullanarak fonksiyonu tamamlıyoruz. Sonrasında bu fonksiyonu 3 kez ilerle komutu ile birlikte “mor çiçeğe bak” fonksiyonunu çağırarak kod bloklarını bitiriyoruz ve sonuca ulaşıyoruz.
Bölüm 8′ de aslında ana kod bloklarımızı Code org kendisi yazmış. Bizden “çiçeğe bak bal yap” fonksiyonunu düzenlememizi istiyor. Dikkat ederseniz bu fonksiyonu döngü içinde 2 kez çalıştırmış oluyor. Bu mantıkla fonksiyon içerisindeki bloklarımızı düzenleyelim. Çiçeklerde 1-2-3 adet nektar olabilir. Bunun için bir döngü oluşturuyor ve nektarları topluyoruz. Sonrasında bir ileriye gidip peteğin içerisine sadece 1 adet bal yap komutunu uyguluyoruz. Böylece bu bölümü de atlayabiliriz.
Bölüm 9′ da yine bir fonksiyon düzenleme yapılması istenmiş. Bu kez soru işareti ile bir bulut var ve bulutun altındaki eğer çiçekse nektarı al değilse yani petekse bal yap komutunu uygulamamız gerekiyor. Sonrasında bu fonksiyonu ana programda bir adım ilerledikten sonra çağırıyor ve sonuca ulaşıyoruz.
Hangi Kod Bloğu Çözüm Olur?
Son bölümde mor çiçeğin 3-2 veya 1 adet nektarı olduğunu ve bunu bulup buna göre nektarı almamız gerektiğini belirtiyor. Buna göre aşağıdaki kodlardan hangisi bu probleme çözüm olur? Resimde işaretlediğimiz C şıkkı bu işlemi gerçekleştirir.
Kurs 3 Ders 7′ deki 10 alt bölümü bitirdik. Uygulamalara code.org’ un resmi web sitesinden ulaşmak için bu bağlantıyı kullanabilirsiniz. Sonraki derslerimizde görüşmek dileğiyle.
Not: code org Kurs 3 Ders 7 – 7.Arı: Koşullandırıcılar isimli makale içerisindeki anlatımlar özgün içeriktir. Alıntı yapmadan kullanılamaz. Ancak uygulamalar code.org geliştirme ortamından alındığı için aynı uygulamanın birden çok çözüm yolu da bulunabilir. @kodlamaegitimi.org