Bu hafta akış şemalarını öğreneceğiz. Akış şemalarının ne işe yaradığını ve akış şemasının nasıl oluşturulduğunu öğreneceğiz. Farklı akış şemaları oluşturacağız.
Soru:
Şema kelimesinin ne anlama geldiğini biliyor musunuz?
Şema:
Bir bilginin, çeşitli şekiller ya da çizimlerle oluşturulmuş şekillere şema denir. Şemalar üzerinde bilgiler bulunur.
Soru:
Akış şemasının ne anlama geldiğini biliyor musunuz?
Akış şeması
Bir problemi çözmek ya da belirli bir amaca ulaşmak, bir işi gerçekleştirmek için tasarladığımız yola algoritma yada yönerge dendiğini öğrenmiştik. Algoritmaların, görsel sembollerle ifade ediliş biçimine ise akış şeması denilmektedir.
Akış şemasıı, diğer diyagramlarda olduğu gibi, bir süreçte neler olduğunun görselleştirilmesine yardımcı olmaktadır. Akış içerisinde bulunan sorunlu alanları ve gözden kaçırılan noktaları görmede bireylere yardımcı olmaktadır. Aşağıdaki gördüğünüz gibi yapılacak işlemler şekiller içerisine yazılarak oklarla işlemleri birbirine yönlendiriyor.
Akış şemasının yapılış amacı
Akış şeması, algoritmaları ve yapılan işlemleri birbirine oklarla bağlı değişik sembollerdeki kutular içerisinde gösteren bir şemadır. Akış şeması, çeşitli alanlardaki işlem ve uygulamaların yönetilmesini sağlar.
Akış şeması, bir algoritmanın şekilsel olarak ifade etmektedir. Bunun için algoritmanın anlaşılabilirliğini kolaylaştırmaktadır. Akış diyagramlarını gösteren bazı semboller vardır. Bu semboller aslında işlevlerin simgesel gösterimini temsil eder.
Akış şeması şekilleri
Akış şeması şekilleri, kendine ait olan görevleri yapmaktadır. Aşağıdan algoritmalarda kullanılan şekilleri inceleyiniz.
Hayatımızdan akış şeması örnekleri:
Şimdi ise gerçek hayatta kullandığımız algoritmaların akış şemalarında nasıl gösterildiklerini inceleyelim. Algoritmaların akış şemalarına nasıl yerleştiğine dikkat edelim.
Örnek 1 - Sabah yaptığımız işlemlerin akış şemasında gösterimi
Aşağıdaki resimde solda bir kişinin sabah okula giderken uyguladığı algoritmayı görüyorsunuz. Sağ tarafta ise algoritmanın akış şemasına aktarıldığı hali görüyorsunuz. Akış şemaları algoritmaların şekillerle gösterilmiş halidir. Aslında bu hepimizin uyguladığı bir algoritmadır. Farkında olmadan bu algoritmayı okula gideceğimiz her gün rutin olarak tekrarlarız. Zaten rutin her zaman yaptığımız olaylara denir.
Örnek 2 - Kek tarifinde yapılan işlemlerin akış şemasında gösterimi
Örneğin evde yaptığımız bir kekin tarifinin akış şemasını inceleyelim. Aşağıdaki görselde solda algoritmamız mevcut. Sağda ise kek yaparken oluşturduğumuz tarifin akış şemasına eklenmiş hali mevcut. Dikkat ederseniz sorular eşkenar dörtgenin içerisine yazılmış.
Örnek 3 - Tatlı tarifinde yapılan işlemlerin akış şemasında gösterimi
Aşağıda bir tatlı tarifini inceleyelim. Tatlı tarifinin algoritması akış şeması üzerinde gösterilmiş. Aşağıdaki adımlara dikkat edilirse sorular eşkenar dörtgene yazılmış. Çünkü sorular mantıksal ifadeler içeriyor. Yanıtları evet veya hayır olan mantıksal sorular eşkenar dörtgene yazılır. Ayrıca bu sorunun cevabına göre hangi adımın seçileceğini görüyorsunuz. Örneğin fındık ve kakao var mı sorusunun cevabı evet ise ekle adımına götürüyor fakat hayır ise malzemeleri karıştır adımına götürüyor. Diğer adımlar ise dikdörtgenler içerisine yazılmış. Çünkü bu adımlarda çeşitli işlemler yer alıyor. Aşağıdan inceleyelim.
Örnek 4 - Hesap makinesinde yapılan işlemlerin akış şemasında gösterimi
Akış şemaları günlük yaşamımızda adım adım yaptığımız işleri ve verdiğimiz kararları içerebileceği gibi bir hesap makinesinin nasıl çalıştığını da anlamamıza yardımcı olabilir. Örneğin bir hesap makinesinin çıkarma işlemini yaparken kullandığı adımları akış şeması ile ifade ettiğimizde aşağıdaki gibi görünür.
İlk adım elips içerisine yazılmış. İkinci adımda ise paralelkenar içerisine sayılar ekleniyor. Çünkü paralelkenar şekli veri girişi yani bilgi girişini temsil eder. Dikdörtgen içerisine 1. ve 2. sayıyı karşılaştırarak büyük sayıyı bul ifadesi yazılmış Çünkü dikdörtgen işlem yapmayı ifade eder. Dalgalı dikdörtgen içerisine sonuç yazılarak yine elips ile işlem tamamlanıyor.
Akış şemaları video:
Soru:
Hikayelerde de akış şemaları oluşturulabilir mi?
Hikayelerde akış şemaları
Günlük yaşamımızda oluşturduğumuz algoritmaları ve bu algoritmaların akış şemalarında gösterildiği durumları inceledik. Şimdi bir hikaye okuyacağız. Bu hikayeye göre akış şemaları oluşturup inceleyeceğiz. Aşağıdaki hikayede Tortop isimli bir kaplumbağanın kısa bir hikayesi var. Öncelikle hikayeyi okuyalım ve bu hikayeye göre algoritmalar ve akış şemaları oluşturalım.
SEVİMLİ KAPLUMBAĞA TORTOP’UN MUHTEŞEM EĞER - YOKSA YAŞAMI
Tortop, Kralın çok sevgili evcil kaplumbağasıydı ve harika bir yaşam sürmekteydi. Günlerini bahçedeki
fıskiyeli küçük havuzda geçirirdi. Bazen yüzer bazen de uyurdu. Bir saat boyunca kıpırdamadan bir
çakıl taşına bakarak kendini eğlendirirdi.
Kral Faralya onu yine de çok severdi. Sarayın görevlileri onunla çok yakından ilgilenirlerdi. Havuzunun temiz olmasına dikkat ederlerdi ancak Tortop yosunların üzerinden kaymayı sevdiğinden dibini biraz yosunlu bırakırlardı.
Tortop, basit birkaç kurala dayalı bir yaşam sürerdi. Gün içinde ne yapacağına karar vermek için çok basit bir mantık yürütürdü. Bu kuralların çeşitleri vardı. Yemek yeme, yüzme, hava durumu gibi kuralları vardı. Bu kurallara EĞER-YOKSA kuralları derdi. Bu ismin ne anlama geldiğini kuralları incelediğinizde göreceksiniz.
EĞER-YOKSA - Yemek yeme kuralı:
EĞER karnı açsa
Yemek ye
YOKSA
Yemek yeme
Bu mantık Tortop için çok iyi çalışıyordu çünkü acıktığı zaman yemek yiyordu ve doğal olarak acıkmadığı zaman da yemek yemiyordu.
EĞER-YOKSA - Yüzme kuralı:
EĞER fıskiye açıksa
Fıskiyenin altında yüz
YOKSA
Büyük kayanın etrafında yüz
EĞER-YOKSA - Hava durumu kuralı:
Hava güneşliyse çimenlerde otur
Yoksa ılık ve bulutlu ise
Yüzmeye git
YOKSA
Uyu
Tortop’un bakımından sorumlu olan bahçıvan çoğunlukla “Bu kaplumbağanın tüm yaptığı yemek yemek, uyumak ve yüzmek” diye dalga geçerdi, ki bu sözler pek de yanlış sayılmazdı. Tortop’un yaşamını düzenleyen mantık EĞER-YOKSA ifadeleri ile birbirlerine bağlanmış 50 kadar farklı davranıştan oluşmaktaydı.
Ve bir gün hiç akla gelmeyen bir şey oldu. Bahçıvan Tortop belki biraz sıkılmıştır diye düşündü ve ikinci
bir büyük kaya ekledi havuza. Bu büyük kaya Tortop’un EĞER-YOKSA ifadelerine ekleme yapması gerekti. Çünkü eskiden havuzda bir kaya vardı şimdi ise sağda ve solda iki kaya olmuştu. Hemen aşağıdaki gibi yeni kuralını oluşturdu. Böylece hayatında düzen yeniden sağlanmış oldu.
EĞER-YOKSA - Kaya etrafında yüzme kuralı:
EĞER sağdaki taşa daha yakınsan
Sağdaki taşın çevresinde yüz
YOKSA
Soldaki taşın çevresinde yüz
Tortopun hikayesindeki akış şemaları:
Tortopun hikayesini okudunuz ve kurallarını gördünüz. Şimdi bu hikayeye göre aşağıdaki soruların yanıtlarını bulunuz.
Soru 1:
Yukarıda okuduğunuz hikayede geçen TORTOP'un hava durumu kuralına aşağıdan tekrar göz atınız ve TORTOP'un yemek yeme kuralını ve akış şeması üzerinde gösteriniz.
EĞER-YOKSA - Hava durumu kuralı:
Hava güneşliyse çimenlerde otur
Yoksa ılık ve bulutlu ise
Yüzmeye git
YOKSA
Uyu
Cevap 1:
Yukarıdaki hikayede TORTOP'un hava durumuna bağlı olarak hangi hareketleri yapması gerektiğini akış şemasında inceleyelim. Aşağıdaki akış şemasında hava güneşli mi sorusunun cevabı evet ise çimenlere oturuyor ve algoritma bitiyor. Fakat hava güneşli mi sorusunun cevabı hayır ise başka bir soru olan hava ılık ve bulutlu mu sorusuna yönlendiriyor. Bu sorunun cevabı evet ise yüzmeye gidiyor hayır ise uyuyor. Yani iki sorunun cevabı hayır ise uyuyor.
Soru 2 : Yukarıda okuduğunuz hikayede geçen TORTOP'un yüzme kuralına aşağıdan tekrar göz atınız ve TORTOP'un yemek yeme kuralını ve akış şeması üzerinde gösteriniz.
EĞER-YOKSA - Kaya etrafında yüzme kuralı:
EĞER sağdaki taşa daha yakınsan
Sağdaki taşın çevresinde yüz
YOKSA
Soldaki taşın çevresinde yüz
Cevap:
Tortop yüzmek istediğinde, etrafında yüzmek istediği taşı çok basit bir şekilde belirliyor. Tortopun tercih edeceği taşın kendisine yakın olması yeterli. Yani iki taştan hangisi yakınsa onu seçiyor. Bunu da çok basit bir soru ile akış şemasında gösterebilir. Sağdaki taşa yakın mı sorusu yeterli oluyor. Çünkü sağdaki taşa yakın mı sorusunun cevap evet ise sağdaki taşa daha yakındır ve onun etrafında yüzer. Fakat bu sorunun cevabı hayır ise demekki soldaki taşa daha yakın ve onun etrafında yüzer. Aşağıdaki akış şemasından inceleyelim.
Hayatımızdaki akış şeması örneği:
Hikayelerde olduğu gibi bizim hayatımızda da akış şeması örnekleri vardır. Örneğin soğuk kış günlerinde sizin de bildiğiniz gibi bazı hayvanlar aç ve susuz kalabilir. Bir hayvan sever olarak siz de gün boyunca akşam saat 8' e kadar onlara yardım etmeye karar veriyorsunuz.
Ancak bir sorunla karşılaşıyorsunuz. Dışarıya koyduğunuz su iki saat içinde donuyor. Yani su dışardaki soğukta 2 saat içeresinde içilemeyecek duruma geliyor. Bu problemi çözmek için önce bir algoritma oluşturunuz ve ardından bu görevi kendinize hatırlatacak bir akış şeması oluşturunuz.
Cevap:
Hedefe yönelik algoritmalar
Akış şemalarını algoritmamızın adımlarını daha etkili göstermek için kullandık. Şimdi de bir aracı/nesneyi istediğimiz yere göndermek için nasıl bir akış şemaları hazırlayabileceğimize bakalım. Bu aslında bilgisayarda karşılaştığımız pek çok oyun ve animasyonun da temelini oluşturuyor. Bilgisayar üzerinde kodlama yaparken yapacağınız proje hedeflerine göre algoritmalar oluşturmanız gerekiyor. Aşağıda bununla ilgili bir örnek mevcut. Dikkatle inceleyiniz.
Örnek 1:
Aşağıdaki şekilde yer alan aracın A noktasına ulaşması için bir algoritma oluşturunuz. Daha sonra algoritmanızı akış şeması üzerinde gösteriniz.
Cevap 1 :
Aracın A noktasına ulaşması için yaptığımız akış şemasını inceleyelim. Dikkat ederseniz basit adımlarla problemi çözdük.
Örnek 2:
Aşağıdaki şekilde yer alan aracın aracın B noktasına, ulaşması için bir algoritma oluşturunuz. Daha sonra algoritmanızı akış şeması üzerinde gösteriniz.
Örnek 3:
Aşağıdaki şekilde yer alan aracın aracın önce B noktasına, sonra ise C noktasına ulaşması için bir algoritma oluşturunuz. Daha sonra algoritmanızı akış şeması üzerinde gösteriniz.
Örnek 4:
Robotumuz C veya D noktalarından birine gitmesi gerekiyor. Fakat bu iki noktadan sadece birisine gidecek kadar pili kaldığını düşünelim. Yani robotumuz bu iki noktasından sadece birisine gidebilecek. O halde bu duruma uygun bir akış şeması oluşturalım.
Cevap 4:
Sonuç:
Bugünkü dersimizde akış şemasını ve algoritma ile akış şeması arasındaki ilişkiyi öğrenmiş olduk. Aslında bilgisayar dilindeki komutların yapısını da öğrenmiş olduk. Bu örnekler aslında bilgisayardaki programlama yani kodlama dediğimiz etkinliklerin temelini oluşturuyor.
Code.org sitesi görevi
Bilgisayar kullanımının ve kodlama bilincinin küçük yaşlardan itibaren gelişebilmesi için hazırlanmış bir eğitim sitesidir. Bu site sayesinde hiç bir ek donanıma gerek duymadan kodlama ve algoritma yapısını kavrayabilirsiniz.
Code.org - Bu haftanın etkinliği
Bu hafta Code.org 'da görevimizi yapacağız. Şimdi sizler için hazırlanan aşağıdaki davetiye ile görevinize ulaşıyorsunuz.
Code.org - Bölüm davetiyesi
Bölüm ismi: Problem çözme etkinliği - 7. hafta
1.) https://studio.code.org/join/YPZFSJ 'e gidin.
sınıf kodunuzu girin: YPZFSJ
2.) Adınızı belirleyin: egitimdebilisim
3.) Gizli resminizi seçin:
4.) Giriş yap butonuna tıklayın.
Code.org - Giriş yapamayanlar için yardım videosu
Telefon veya tabletten girenler için uyarı:
Telefon veya tabletle girenler için soldaki gibi bir uyarı çıkabilir. Bu ekranı yan çevirin demektir. Eğer ekranı yan çevirdiğinizde de girmiyorsa telefonunuzun yan çevirme özelliği kapalıdır. Sağdaki resimde görünen butondan bu özelliği açmanız gerekir.
Comments