Programlamaya Giriş ve Algoritma · Kitap s. 42–87

Algoritma ile Problem Çözme
ve Akış Diyagramı

Problemi kavramaktan algoritmaya, algoritmadan akış diyagramına: programlamanın düşünme temeli.

2.1–2.3 Problem ve Çözüm 2.4–2.5 Algoritma 2.6–2.7 Programlama 2.8–2.11 Akış Diyagramı
2.
Ünite
Başlarken s. 42–43

Bir problemle karşılaşınca…

  • Çözüm sürecine nasıl başlarsınız?
  • Problem doğru kavranmazsa hangi sonuçlar doğar?
  • Bilgisayarın yaptığı her iş bir problemin sonucuysa çözüm yolları nasıl belirleniyor olabilir?

Problem çözme süreci programlamanın temelidir. Problemi alt basamaklara ayırmak, gereksinimleri ve girdi-işlem-çıktı aşamalarını kavramak çözüme en kısa yoldan ulaştırır.

Öğrenilecek anahtar kavramlar

akış diyagramıakış diyagramı şekillerialgoritmagirdi-çıktıproblemproblem çözme süreciprogramlama
1. Sıra Sizde

Semtinizde herkesi etkileyen bir problem belirleyin. Sizi nasıl etkiliyor? Çözüm önerileriniz neler?

2.1.1 · Problem Kavramı s. 44

Problem nedir?

İnsan hayatının her anında karşılaşılan zorluk ve sorun; zihinsel karmaşa, engel, çözülmesi gereken durum.

📝 Ödev🍰 Kek yapma📱 Sosyal medya yönetimi🌡️ İklim krizi🌾 Gıda güvenliği🦠 Pandemi💸 Enflasyon
Problem olabilmesi için

Durum kişi için yeni ve orijinal olmalı. Daha önce çözülmüş bir durum artık alışkanlıktır.

Etki alanını bulmak için sorun

❓ Probleme neden olan durum nedir?

❓ Problemin çözümüyle sağlanacak yarar nedir?

Çözülmüş problemleri incelemek ipucu verir; kişi ve kurumların deneyimleri zaman ve enerji tasarrufu sağlar.

2.1.2 · Basit Problem ve Karmaşık Problem s. 45–46

İki tür problem

Basit problem

Belirli bir sırayı izleyerek çözülür. Farklı çözümler olsa da istenen çıktı aynıdır.

🚌 Otobüsle bir yere gitmek🍳 Yemek pişirmek🖨️ Çıktı almak
Karmaşık problem

Farklı zorluk seviyesinde alt problemlere ayrılır.

🌍 İklim krizi projesi🩺 Hastanın tedavisi📲 Yemek siparişi uygulaması
1. Örnek

Küresel ısınma ve iklim değişikliği doğanın dengesini ve insan sağlığını tehdit ediyor.

Yenilenebilir enerjiye geçiş · karbon emisyonunu azaltma · ormanları koruma ve yeni orman alanları · çevre kirliliğine önlem · su tasarrufu ve yönetimi · iklim değişikliğine uyum.

2.1.2 · Karmaşık Problemi Bölmek s. 46

Karmaşık problem → alt problemler

Problem

Eğitimde teknoloji kullanımı

Eğitim yazılımları
Uzaktan eğitim
Akıllı tahta
Öğrenci ve öğretmen eğitimi
Problem

Bilgi güvenliği

Veri gizliliği
Zararlı yazılımlara karşı savunma
Ağ güvenliği
Yasal düzenlemeler
Kontrol Noktası · 2.1
  • Bir durumun problem olması için kişiyi rahatsız etmesi ve bunun fark edilmesi gerekir.
  • Nedeni araştırıp etki alanını tespit ederek başlanır; eldeki veriler ve istenenler tartışılır.
  • Karmaşık problemleri alt problemlere bölmek ve benzer çözümleri incelemek yardımcıdır.
2.2 · Problem Çözümü İçin Gereksinimler s. 46–47

Erişilen bilgi ve kaynaklar, problemin açık, anlaşılır ve net tanımlanması ve kapsamın doğru belirlenmesi çözümü kolaylaştırır. Günlük problemleri farkında olmadan bir çözüm planıyla çözeriz.

2. Örnek

Dizüstü bilgisayarda proje ödevi yaparken şarj bitti ve bilgisayar kapandı. Çalışmaya kaldığınız yerden devam etmek için adımları sıralayınız.

  1. Şarj cihazının parçalarını çıkartınız.
  2. Şarj cihazının parçalarını birleştiriniz.
  3. Şarj cihazını prize takınız.
  4. Diğer ucunu dizüstü bilgisayara takınız.
  5. Dizüstü bilgisayarı açınız.
  6. Çalışmaya devam ediniz.
2.2.1 · Problem Çözme Adımları s. 47–48

Problem çözme süreci: 6 adım

1Problemi anlamaBaşkasının anlayacağı şekilde sözcük, şekil veya grafikle ifade et; verilen ve istenenleri belirle.
2Problemi tanımlamaAçık ve doğru tanımla, kapsamı sınırla.
3Farklı yol ve yöntemler belirlemeBenzer problemlerin çözümleri, farklı kişilerin görüşleri, yaratıcı yollar.
4En iyi çözümü seçmeÖlçütler oluştur; uygulanabilirlik ve etkililiği değerlendir.
5Yönergeleri oluşturmaAdım adım, sade ve anlaşılır kurallar yaz (algoritma).
6Çözümü değerlendirmeDoğruluğu kontrol et; sonuç yanlışsa başa dön ve planı düzenle.

Görsel 2.1 · Problem çözme adımları — süreç döngüseldir: değerlendirme başarısızsa adımlar baştan incelenir.

3. Örnek s. 48–49
Soru

Şehir merkezine uzak; bilgisayar, elektrik ve matbaa alanları olan bir meslek lisesine yeni kütüphane kurulacak. Problemi çözme adımlarına göre çözünüz.

1 · Problemi anlama

Girdi: kitap, bilgisayar, genel ağ, yazılım, oda, personel
Çıktı: kütüphane

2 · Problemi tanımlama

Okulun merkeze uzak olması, meslek lisesi olması, bilgisayar-elektrik-matbaa alanlarının bulunması.

3 · Farklı yol ve yöntemler
  • Bütçe; kamu desteği, sponsorluk, STK, bağış gibi finansman kaynakları
  • Çevredeki okul kütüphanelerini inceleyip uygun fiziksel alanı belirleme
  • Teknolojik altyapı için okul ve ilçe desteği
  • Her branştan öğretmenle kitap kurulu
  • Düzeni sağlayacak gönüllü personel veya öğrenciler
3. Örnek (devam) s. 49

Seç, planla, değerlendir

4 · En iyi çözümü seçme

Çözüm yollarından okulun şartlarına en uygun olanlar belirlenir.

5 · Yönergeleri oluşturma

Alt problemler: bütçe ve finansman · fiziksel alan · genel ağ, bilgisayar ve kitap takip yazılımı · uygun kitaplar · personel. Her biri için yönerge planı yapılır.

6 · Çözümü değerlendirme

Kütüphane sorunsuz kurulduysa problem sonlanır. Aksaklık varsa ilgili alt problemin planına dönülür ve düzenlenir.

Görsel 2.2 · Problemin farklı çözümleri

Bir problemin birden fazla çözüm yolu olabilir; her birinin avantajı ve dezavantajı vardır. Çoğu zaman birden fazla yaklaşımı birleştirmek daha etkilidir.

4. Örnek s. 50
Problem

Bir okulda not ortalamaları ve genel başarı düşüyor. Çözüm yolu okulun fiziki özelliklerine, kaynaklarına ve hedeflerine göre değişir.

🧩

Yöntemleri güncelle

Proje temelli, etkileşimli öğrenme ile bireysel başarı ve sınıf ortalaması artar.

👩‍🏫

Öğretmen gelişimi

Eğitim programlarına katılım, güncel yöntem ve teknolojileri derse taşıma.

💻

Teknoloji tabanlı öğrenme

Kendi hızında öğrenme, motivasyon, bireysel takip.

👨‍👩‍👧

Aile iş birliği

Ortak projeler, etkinlikler, veli toplantıları ile okula bağlılık.

2.2.2 · Problem Çözme Süreç Yaklaşımları s. 50–51

Üç düşünme becerisi

Eleştirel düşünme

Problemi nesnel ve sistematik analiz etmek, düşünce kalıplarını sorgulamak. Analiz, yorumlama, kendini düzeltme, çıkarım, açıklama, değerlendirme.

Yaratıcı düşünme

Değişik bakış açılarıyla bakıp yeni ve özgün fikirlerle çözmek. Eleştirel düşünmeden farkı: özgün fikir üretmek.

Algoritmik düşünme

Problemi küçük parçalara ayırmak, olası tüm durumları düşünmek, adım adım uygun yönergeleri izlemek.

Yaygın teknikler

🌪️ Beyin fırtınası🐟 Balık kılçığı diyagramı🎩 Altı şapkalı düşünme📊 Veri toplama ve analiz🔀 Akış diyagramları

Programlama öğrenimi problem çözme, eleştirel, yaratıcı ve algoritmik düşünmeyi geliştirir. · 3. Sıra Sizde: Bu tekniklerden hangileri programlama öğretiminde de kullanılır?

Kontrol Noktası · 2.2 s. 51
  • Proje ödevi, akşam yemeği, otobüsün arızalanması, salgınlar, kaynakların azalması… hepsi günlük problem durumlarıdır.
  • En iyi kararı vermek için altı adım: anlama → tanımlama → farklı yollar → en iyiyi seçme → yönergeler → değerlendirme.
  • Süreçte eleştirel, yaratıcı ve algoritmik düşünmeden yararlanılır.
2.3 · Problemin Girdi-İşlem-Çıktı Aşamaları s. 52

Her problemin üç aşaması

Girdi

Problemde verilenler, kullanıcının girdiği veriler, programın başta okuduğu bilgiler. Gerçek hayatta: elde olan tüm veriler.

→

İşlem

Girdilerle yapılan adımlar. Girdiler alınıp işlenir, yeni veriler üretilebilir.

→

Çıktı

Beklenen sonuç. Ekranda görüntülenen, yazdırılan, programın ürettiği değerler.

5. Örnek · Sayının karesi

Girdi

sayı

→

İşlem

Sayıyı oku. Karesini hesapla. Karesini yazdır.

→

Çıktı

sayının karesi

6. Örnek · KDV’li fiyat

Girdi

fiyat, KDV

→

İşlem

Fiyatı oku. KDV’yi oku. KDV’li fiyatı hesapla ve yazdır.

→

Çıktı

KDV’li satış fiyatı

7. Örnek s. 53
Problem

Bir sosyal medya içerik üreticisinin etkileşimi son haftalarda çok düştü. Problemi alt basamaklara ayırarak çözünüz.

Alt problemGirdiİşlemÇıktı
Hedef kitle iyi analiz edilmemişiçerik, hedef kitleİlgi alanlarını ve davranışları incele; uygun içerik üretHedef kitleye uygun içerik
İçerik kalitesi yetersiziçerikKaliteyi yükselt; güncel, popüler ve çeşitli içerik üretKaliteli, güncel, farklı içerik
Etkileşim yöntemi ve zamaniçerik, etkileşim yöntemleri, zamanTakipçilere soru sor, yorumlara yanıt ver, en aktif saatte paylaşArtan etkileşim
Teknik problemlerses, görüntü, video, bağlantı hızıSes ve görüntü kalitesini iyileştir, bağlantı hızını yükseltKaliteli ses-görüntü, hızlı yüklenen videolar
1. Uygulama s. 53
Soru

Metre (m) cinsinden verilen uzunluğu kilometre (km) ve santimetre (cm) cinsine dönüştürmek için girdi, işlem ve çıktıyı yazınız.

Girdi

m

→

İşlem

m’yi oku.
km = m / 1000
cm = m × 100
km ve cm’yi yazdır.

→

Çıktı

km, cm

2. Uygulama s. 54
Harita

Tren istasyonunda inen öğrenci spor salonuna gitmek istiyor. Kitaptaki haritada bir çözüm yolu verilmiş; farklı çözüm yollarını yönergelerle sıralayınız.

1. çözüm yolu
Sağa dön→İlerle→Sola dön→İlerle→1. sokaktan sağa dön→İlerle→Sola dön→Vardınız
Kontrol Noktası · 2.3

Önemli olan; kısa zamanda ve en az adımla doğru sonuca ulaştıran çözüm yolunu belirlemektir.

2.4 · Algoritma Kavramı s. 55

Algoritma

Bir görevi tamamlamak için kullanılan adımlar veya talimatlar dizisi.

Bilgisayar biliminde: bir programın belirlenen problemi çözmek için attığı adımlar dizisi.

4. Sıra Sizde

Günlük işlerin bir sırası ve mantığı vardır. Bu sıra değişirse sonuç nasıl etkilenir?

Farkında olmadan kullandığımız algoritmalar

🍲

Yemek tarifleri

⏰

Sabah rutini

🗺️

Yol tarifi, en kısa yolu bulan uygulamalar

🎓

Puan ve tercihe göre üniversite yerleştirme

🛍️

Geçmiş hareketlere göre ürün önerisi

📣

Araştırdığın ürünün reklamının karşına çıkması

2.4.1 · Algoritmaların Özellikleri s. 55

İyi bir algoritma…

  • Etkindir; gereksiz tekrar içermez.
  • Her adım kesin bir dille ifade edilir.
  • Bir başlangıcı ve gereksiz döngüye girmemesi için bir sonu vardır.
  • Girdiye ihtiyaç duyar ve adımlar tamamlanınca bir çıktı üretir.
8. Örnek

Kurabiye yapma algoritmasının adımlarını sıralayınız.

  1. Başla.
  2. Kaba tereyağ, şeker, yumurta koy.
  3. Tereyağ, şeker ve yumurtayı karıştır.
  4. Un ve kabartma tozu ekle.
  5. Yoğur.
  6. Fırın tepsisini yağla.
  7. Hamurdan parçalar koparıp yuvarla.
  8. Hamurları tepsiye yerleştir.
  9. Fırını çalıştır.
  10. Tepsiyi fırına yerleştir.
  11. Isıtılmış fırında pişir.
  12. Kurabiyeleri çıkar.
  13. Bitir.
3. Uygulama s. 56
Dijital kimlik broşürü

Dijital kimlik edinme; teknoloji okuryazarlığını artırır, dijital platformlara erişimi ve dijital yurttaşlık sorumluluklarını kazandırır. Broşürün üst kısmı için öğrencilerin kendi e-posta hesabını oluşturmasını sağlayacak bir algoritma yazınız.

  1. Başla.
  2. Genel ağ tarayıcısını aç.
  3. E-posta hizmetinin sayfasına git.
  4. “Hesap oluştur” düğmesine tıkla.
  5. Ad, soyad ve doğum tarihini gir.
  6. Kullanıcı adını seç.
  7. Güçlü bir şifre belirle ve tekrar gir.
  8. Kurtarma bilgilerini (telefon, yedek e-posta) gir.
  9. Kullanım koşullarını oku ve onayla.
  10. Bitir.
2.4.2 · Algoritmanın Tarihi s. 57

Harezmi’den algoritmaya

“Algoritma” sözcüğü, 9. yüzyılda yaşamış Horasan doğumlu matematikçi Ebu Cafer Muhammed bin Musa el Harezmi’nin adının Latince okunuşundan gelir.

ÖNCEAlgorizm“Arap rakamlarıyla aritmetik problem çözme kuralları”
SONRAAlgoritmaPek çok alanda kullanılır
İlk algoritma

Hisab el-cebir ve el-mukabala (Cebir ve Denklem Hesabı Üzerine Kitap)

1. Etkinlik · Harezmi’nin Bilgisayar Bilimine Katkıları

40 + 40 dk · Web 2.0 aracı · Poster Değerlendirme Formu

  1. Harezmi’nin hayatını araştırın.
  2. Kitabı ile algoritma bağlantısını araştırın.
  3. Görsel araştırması yapın.
  4. Görev dağılımı yapıp bir poster tasarlayın.

Değerlendirme: Programlamanın temelini oluşturan 1 ve 0’ın Harezmi’nin buluşlarıyla bağlantısı nedir?

2.5 · Algoritma ile Problem Çözme s. 58

Akışa yön veren üç yapı

Algoritma problemi küçük parçalara ayırır; adımlar birbirine bağlıdır ve doğru sırada yazılmalıdır. Doğru sıra hataları erken yakalar, gereksiz tekrarları önler. Arama motorları ve sosyal medya da algoritmalarla çalışır.

➡️
Sıralama

Tüm aşamalar sırayla uygulanır.

🔀
Seçme / Karar verme

Adımlar bir şarta bağlanır; şarta göre bazı adımlar uygulanır, bazıları atlanır.

🔁
Yineleme

Tekrar eden adımların kaç kez ve hangi adımlarla yineleneceğini belirtir.

Algoritmanın doğru çalıştığını anlamak için adımları sırayla uygulayıp değerleri bir tabloda izlemek gerekir.

Tablo 2.1 – 2.2 · Algoritmanın Çalıştırılması s. 59

A’dan başlayıp B’ye kadar C artışla giden sayıların toplamı:

  1. Başla.
  2. A’yı oku.
  3. B’yi oku.
  4. C’yi oku.
  5. Toplam = 0
  6. Sayaç = A
  7. Toplam = Toplam + Sayaç
  8. Sayaç = Sayaç + C
  9. Eğer Sayaç <= B ise 7. adıma git.
  10. Toplamı yaz.
  11. Bitir.
Sıralama ✓Seçme ✓ (9. adım)Yineleme ✓ (7. adıma dönüş)
ABCToplamSayaçAçıklama
53010056. adıma kadar
5157–8. adım; 15 <= 30 ✓
2025Tekrar; 25 <= 30 ✓
453535 <= 30 ✗ → döngü biter
Çıktı
45

5 + 15 + 25 = 45

2. Etkinlik · Algoritmadaki Hataların Belirlenmesi s. 60–61

Bu algoritmada ne yanlış?

  1. Genel ağ tarayıcısına tıkla.
  2. Başla.
  3. Arama kutusuna konu yaz.
  4. Bilgisayarı aç.
  5. Adres satırına genel ağ sayfasının adresini yaz.

Hataları bulun, eksik adımları ekleyin. Düzeltilmiş algoritmayı “ogm materyal” aramasıyla test edin.

  1. Başla.
  2. Bilgisayarı aç.
  3. Genel ağ tarayıcısına tıkla.
  4. Adres satırına arama motorunun adresini yaz.
  5. Arama kutusuna konuyu (“ogm materyal”) yaz.
  6. Ara düğmesine bas.
  7. Sonuçları incele.
  8. Bitir.
Hatalar

“Başla” ilk adım değil · bilgisayar açılmadan tarayıcıya tıklanıyor · sıralama karışık · arama yapma ve “Bitir” adımları eksik.

Kontrol Noktası · 2.4 – 2.5 s. 57, 61
  • Algoritma; kesin bir dille, tekrarlardan kaçınılarak yazılmış, girdileri işlem adımlarıyla sonuca ulaştıran talimatlardır.
  • “Algoritma” kelimesi 9. yüzyıl matematikçisi Harezmi’nin adından gelir.
  • Algoritmalar sıralama, seçme ve yineleme yapılarıyla kurulur.
4. Uygulama

Tüm okulu ilgilendiren bir problem belirleyin; girdi, işlem ve çıktısını yazıp algoritmasını hazırlayın.

2.6 · Programlamanın Önemi s. 61–62

Programlama: bilgisayara talimat vermek

Programlama, bilgisayara belirlenen görevleri yerine getirmesi için talimat vermenin yoludur. Problem çözme, eleştirel, yaratıcı ve algoritmik düşünmeyi geliştirir; bilişsel öğrenmeyi olumlu etkiler.

🧠

Problem çözme ve analitik düşünme

Karmaşık problemi küçük parçalara bölmeyi, adım adım düşünmeyi öğretir.

⚡

Verimlilik

İşleri otomatikleştirir; zaman ve maliyet tasarrufu sağlar.

🎨

Yaratıcılık

Kod yazmak yaratıcı bir süreçtir; yenilikçi çözümler doğurur.

🌍

Küresel etki

YZ, otomasyon, nesnelerin interneti; milyonların kullandığı uygulamalar.

🚀

Girişimcilik

Eğitimden sağlığa her sektörde teknolojik ürün geliştirme.

✅

Kontrol Noktası 2.6

Programlama becerisi dijital dünyaya uyumu kolaylaştırır; problem çözme ve analitik düşünmede yetkinlik kazandırır.

2.7 · Programlama Dillerinin Gelişimi s. 63–64

Makine dilinden yüksek seviyeli dillere

Program: bir problemi çözmek için bilgisayarın yürüttüğü talimatlar dizisi. Algoritmalar uygun bir programlama diliyle yazılınca program oluşur.

İLK DÖNEMMakine dili1 ve 0’lardan oluşan komutlar
10110000 01100001
1940’LARIN SONUAssemblyDaha anlaşılır, derlenebilir ama düşük seviyeli ve karmaşık
MOV AL, 61h
1950 SONRASIYüksek seviyeli dillerKonuşma diline en yakın; nesne yönelimli, işlevsel, görsel, mantıksal diller
print("Merhaba")

Kullanım alanları

WebMobilMasaüstüMakine öğrenimiVeri analiziOtomasyon

Örn. Python; veri analizi, otomasyon ve makine öğrenimi için kapsamlı kütüphanelere sahiptir.

Kontrol Noktası 2.7

Dil seçimi; projenin gereksinimlerine, performansa ve programcının deneyimine göre yapılır. Amaca yönelik, kolay kodlanabilir ve hızlı çalışan dil seçmek önemlidir.

2.8 · Akış Diyagramları s. 64

Akış diyagramı

Algoritmadaki her adımın şekiller ve oklarla görselleştirilmesidir. Programlama dilinden bağımsız, herkesin anlayabileceği ortak bir dildir. (Akış şeması da denir.)

Program yazmadan önce çizilir; programın analizinde, tasarımında, belgelenmesinde ve yönetiminde kullanılır.

Bilgi Notu

Üç gösterim de programlama komutu içermez, program mantığını anlatır, hataları bulmayı kolaylaştırır ve gerçek koda geçişte yol haritasıdır.

Aynı algoritma, üç gösterim

1 · Doğal dil

İki sayıyı al, topla ve sonucu ekrana yaz.

2 · Sözde kod

OKU a, b
toplam ← a + b
YAZ toplam

3 · Akış diyagramı
Başla→a, b→toplam = a + b→toplam→Bitir
2.8.1 · Akış Diyagramı Kullanmanın Yararları s. 65

Neden akış diyagramı?

💬

İletişim

Sistemin mantığını ortak bir dille aktarır.

🔍

Etkili analiz

Problem daha etkili analiz edilir.

⌨️

Verimli kodlama

Analiz ve geliştirmede kılavuzdur.

🐞

Doğru hata ayıklama

Hataları bulmayı kolaylaştırır.

Görsel 2.4 · Akıştan koda

Akış diyagramı→PythonCJava…

Diyagramı çizdikten sonra programı herhangi bir yüksek seviyeli dilde yazmak kolaylaşır.

Evrensel semboller

Farklı ülkelerdeki programcılar aynı diyagramı aynı şekilde anlar. Kaynaklarda küçük farklar olsa da genel hatlar korunur.

2.9 · Temel Akış Diyagramı Şekilleri ve Elemanları s. 66–67

Tablo 2.3 · Akış diyagramı şekilleri

Başla – Bitir

Akışın başlangıcı ve bitişi.

Veri girişi – çıkışı

“Adınızı giriniz”, “sayı giriniz” gibi adımlar.

İşlem

Aritmetik işlemler ve atamalar: topla, ortalama hesapla…

Yazdırma – Çıktı

Ekranda bilgi gösterme: “toplamı yazdır”. Bazen paralelkenar da kullanılır.

Döngü

Tekrar eden adımlar: 1’den 100’e dörder artış.

Karar – Karşılaştırma

Mantıksal sınama: ortalama 70’ten büyük mü?

Önceden tanımlı işlem

Başka yerde tanımlanmış bloğun konumu.

Bağlantı

Diyagram birden fazla alana yayılınca bağlantı noktası.

İşlem akış yönü

Adımlar arasındaki yönü gösterir; her şekil sonrakine okla bağlanır.

2.9.1 · Akış Diyagramı Gösterimleri s. 67–68

1 · Doğrusal (sıralı) akış diyagramı

İşlemler belirli bir sırada art arda gerçekleşir; geriye dönüş veya atlama yoktur. (Görsel 2.6)

9. Örnek · Ekmek yapma

Ekmek yapma algoritmasını doğrusal akış diyagramıyla gösteriniz.

Başla→Kaba ılık su, maya, şeker koy→Karıştır→Maya aktifleşene kadar bekle→Un, tuz ve maya karışımını koy→Hamuru yoğur→Mayalanana kadar bekle→Tezgâha un serp→Hamuru tezgâha al→Ekmek şekli ver→Tepsiye yerleştir→Tepside mayalanmasını bekle→Pişir→Bitir

Bilgi Notu: Doğrusal akış diyagramlarında iş akışı algoritmadaki sırayla art arda gerçekleşir.

5. Uygulama s. 68
Soru

İki sayının toplamını bulan ve sonucu ekrana yazdıran uygulamanın algoritmasını ve akış diyagramını oluşturunuz.

  1. Başla.
  2. Sayı1 ve Sayı2’yi gir.
  3. Toplam = Sayı1 + Sayı2
  4. Toplamı ekrana yazdır.
  5. Bitir.
BaşlaSayı1, Sayı2Toplam = Sayı1 + Sayı2ToplamBitir
2.9.1 · Mantıksal (Karar) Akış Diyagramları s. 69–70

2 · Karar yapısı

Koşula göre yön değiştirir. Koşul eşkenar dörtgen içine yazılır; sağlanırsa Evet, sağlanmazsa Hayır okunun yönünde ilerlenir. Birden fazla koşul iç içe de kullanılabilir (Görsel 2.7–2.8).

10. Örnek · Ehliyet sınavı

Yazılı sınavdan 70 ve üzeri alan direksiyon sınavına girebilir, 70’in altında alan tekrar yazılı sınava girer.

  1. Başla.
  2. Ehliyet sınavı puanını gir.
  3. Puan 70’in altındaysa 4. adıma, değilse 5. adıma git.
  4. “Ehliyet yazılı sınavına tekrar girmelisin.” yazdır, 6. adıma git.
  5. “Sınavı geçtin. Direksiyon sınavına girebilirsin.” yazdır.
  6. Bitir.
BaşlaPuanPuan < 70 ?EVETHAYIR"Yazılı sınavatekrar girmelisin.""Sınavı geçtin. Direksiyonsınavına girebilirsin."Bitir
6. Uygulama s. 71
Soru

Klavyeden girilen iki farklı sayıdan büyük olanı bulan ve ekrana yazdıran uygulamanın algoritmasını ve akış diyagramını yazınız.

  1. Başla.
  2. A ve B sayılarını gir.
  3. A, B’den büyükse 4. adıma, değilse 5. adıma git.
  4. A’yı yazdır, 6. adıma git.
  5. B’yi yazdır.
  6. Bitir.

Bilgi Notu: Mantıksal akış diyagramlarında iş akışı koşulun doğruluğuna göre yön değiştirir.

BaşlaA, BA > B ?EVETHAYIRABBitir
2.9.1 · Döngüsel (Tekrarlı) Akış Diyagramları s. 72

3 · Döngü yapısı

Tekrar eden işlemler döngüyle gösterilir. Döngü altıgen ile ifade edilir; içine hangi koşul sağlandığı sürece devam edileceği yazılır. Koşul bitince döngüden sonraki adıma geçilir (Görsel 2.9).

11. Örnek

1’den 10’a kadar olan sayıları ekrana yazdıran uygulamanın algoritmasını ve akış diyagramını oluşturunuz.

  1. Başla.
  2. Döngünün başlangıç değerini belirle (i = 1).
  3. i, 11’den küçükse 4. adıma git; değilse 5. adıma git.
  4. i’yi ekrana yaz, i’yi 1 artır, 3. adıma git.
  5. Bitir.
Başlai = 1’den 10’a1’er artarakiEVETHAYIRBitir
Ekran Çıktısı
1 2 3 4 5 6 7 8 9 10
7. Uygulama s. 73–74
Soru

Otuz kişilik bir sınıfta tüm öğrencilerin adı ve soyadının bulunduğu listeyi oluşturan programın algoritmasını ve akış diyagramını tasarlayınız.

  1. Başla.
  2. i = 1
  3. i, 30’dan küçük veya eşitse 4. adıma; değilse 7. adıma git.
  4. i. öğrencinin adını ve soyadını gir.
  5. Ad ve soyadı listeye ekle.
  6. i’yi 1 artır, 3. adıma git.
  7. Listeyi yazdır.
  8. Bitir.
Kontrol Noktası · 2.9
  • Akış diyagramlarında standart semboller vardır; oklarla birbirine bağlanır.
  • Sıralama, seçme ve yineleme yapıları; doğrusal, mantıksal ve döngüsel akış diyagramlarıyla gösterilir.

Bilgi Notu: Döngüsel akış diyagramlarında bir koşul sağlandığı sürece işlemler tekrar eder.

2.10 · Akış Diyagramı Okuma s. 74–75

Bir diyagramı nasıl okuruz?

1Girdileri belirle
2Çıktıları belirle
3Amacı tahmin et
4Karşılaştır, benzerlik ara
5Hipotez kur
6Doğrula

Karar ve döngü yapılarına, şartlara ve şart sağlanınca yapılan işlemlere bakmak amacı büyük ölçüde ortaya koyar.

Girdi: S1, S2, S3
İşlemler: Toplam = S1 + S2 + S3, Ort = Toplam / 3
Çıktı: Ort

Amaç: Girilen üç sayının toplamını, sonra ortalamasını hesaplayıp ortalamayı yazdırmak.

12. Örnek

Diyagramın girdi ve çıktılarını belirleyip amacını tahmin ediniz.

BaşlaS1, S2, S3Toplam = S1 + S2 + S3Ort = Toplam / 3OrtBitir
3. Etkinlik · Akış Diyagramı Okuma s. 76
Problem

Girilen yılın artık yıl olup olmadığını bulan programın algoritmasını yazıp akış diyagramını çiziniz. (40 dk · kâğıt, kalem)

Girdi-işlem-çıktı→İşlem adımları→Semboller→Kâğıda çizim→Sınıfta okuma ve karşılaştırma
Artık yıl kuralı

Yıl 4’e tam bölünüyor ve 100’e bölünmüyorsa, ya da 400’e tam bölünüyorsa artık yıldır.

  1. Başla.
  2. Yılı gir.
  3. Yıl 400’e tam bölünüyorsa 6. adıma git.
  4. Yıl 100’e tam bölünüyorsa 7. adıma git.
  5. Yıl 4’e tam bölünmüyorsa 7. adıma git.
  6. “Artık yıl” yazdır, 8. adıma git.
  7. “Artık yıl değil” yazdır.
  8. Bitir.
2.11 · Akış Diyagramı Tasarlama s. 77

Tasarım zamanı

Çözüm planı hazırlandıktan sonra, kodlamaya geçmeden akış diyagramı tasarlanır: uygun tür seçilir, uygun sembollerle çizilir. Kâğıtta ya da kelime işlemci ve çizim programlarında çizilebilir.

4. Etkinlik

Girilen n sayısına kadar olan sayıların karelerinin toplamını ekrana yazdıran programın akış diyagramını elektronik ortamda tasarlayınız.

Örnek · n = 3
1² + 2² + 3² = 14
BaşlanT = 0i = 1’den n’e1’er artarakT = T + i × iEVETHAYIRTBitir
9. Uygulama · Beden kitle indeksi s. 78
Soru

BKİ’yi hesaplayıp sonuca göre durumu yazdıran programın akış diyagramını oluşturunuz.

BKİDurum
< 18.5Zayıf
18.5 – 25Normal
25 – 30Hafif kilolu
30 – 35Kilolu
diğerAşırı kilolu

İpucu: BKİ = kilo / (boy × boy). İç içe karar yapıları (Görsel 2.8) kullanılır.

10. Uygulama · Genel ağ tarifesi s. 79
Soru

75 GB paket 400 TL; her 1 GB aşım 10 TL. Kullanılan kotaya göre ücreti hesaplayıp yazdıran akış diyagramını oluşturunuz.

BaşlaKota (GB)Kota > 75 ?EVETHAYIRÜcret = 400 +(Kota − 75) × 10Ücret = 400ÜcretBitir
Ünite Sonu Ölçme ve Değerlendirme s. 82–83
Bisiklet kiralama sistemi

Kullanıcı kimlik numarasıyla giriş yapar; sistem kayıtlı olup olmadığını kontrol eder. Kayıtlıysa bisiklet seçilir, uygunluğu kontrol edilir ve kiralama başlar. Kayıtlı değilse “Kayıt bulunamadı.” uyarısı verilir. Kiralama boyunca her 10 dakikada bir ücret güncellenir.

9

Hangi yapının eksik olması sürecin mantıksal akışını ve karar mekanizmasını doğrudan zayıflatır?

A) Başla–bitir sembolüB) Girdi-çıktı sembolüC) Karar yapısıD) İşlem kutusuE) Akış okları
10

Her 10 dakikada bir ücret güncellemesi algoritmik açıdan en iyi nasıl açıklanır?

A) Tekrar eden yapı içermezB) İşlem adımına gerek yokturC) Akış diyagramıyla gösterilemezD) Mutlaka karar yapısı olmalıE) Belirli aralıklarla tekrar ettiği için döngü kullanılır
Ünite Sonu Ölçme ve Değerlendirme s. 85

Boşlukları doldurun

akış diyagramıalgoritmik düşünmeçıktıdeğişkendöngügirdiişlemkarar yapısıkarmaşık problemsözde kod
17

Koda geçmeden çözümün günlük dile yakın biçimde adım adım ifade edilmesi sözde kod kullanımına örnektir.

18

Programa dışarıdan girilen sayı, metin, kullanıcı adı, şifre gibi veriler girdi bölümünde yer alır.

19

Çözüm adımlarının semboller, kutular ve oklarla gösterilmesi akış diyagramı ile ifade edilir.

20

Birden fazla sorunun analizini ve alt problemlerin çözümünü gerektiren durumlar karmaşık problem kapsamındadır.

21

İşlemler sonucunda ekranda görülen sonuç çıktı olarak adlandırılır.

22

Problemleri küçük parçalara ayırarak çözüm geliştirmek algoritmik düşünme kavramının göstergesidir.

23

Veriler üzerinde yapılan toplama, karşılaştırma, sıralama ve hesaplamalar işlem bölümünü oluşturur.

Ünite Sonu Ölçme ve Değerlendirme s. 85

Doğru mu, yanlış mı?

24

Yaratıcı düşünme, farklı bakış açılarıyla özgün çözümler geliştirmektir.

D
25

Algoritmadaki her adım açık, kesin ve anlaşılır olmalıdır.

D
26

Her algoritma mutlaka kullanıcıdan veri almalıdır.

Y
27

Gereksiz tekrar algoritmanın etkinliğini artırır.

Y
28

Akış diyagramı hataları bulmaya yardımcı olur.

D
29

Akış diyagramları ortak semboller olmadan anlaşılabilir.

Y
30

Akış diyagramları genellikle program yazılmadan önce hazırlanır.

D
31

Başlangıç ve bitişi olmayan algoritma eksiktir.

D

Kantin sırası · Eşleştirme

a) Veri toplamab) Problemi anlamac) Problemi tanımlamaç) Farklı çözüm yollarıd) En iyi çözümü seçmee) Kaynak planlamaf) Yönerge oluşturmag) Süreç izlemeh) Çözümü değerlendirme
32

Mobil sipariş, ek kasa, sınıf bazlı sıra gibi seçenekler belirlenir.

ç
33

Seçilen çözümü uygulamak için adımlar yazılır.

f
34

Teneffüsün çoğunun sırada geçtiği fark edilir.

b
35

Mobil siparişin daha hızlı ve uygulanabilir olduğuna karar verilir.

d
36

Bekleme süresinin azalıp azalmadığı kontrol edilir.

h
37

Sorunun öğle teneffüsünde ve 9. sınıflarda yoğun olduğu belirlenir.

c
Özet

Bu ünitede öğrendiklerimiz

Problem çözme

Basit ve karmaşık problem; 6 adımlı süreç; eleştirel, yaratıcı, algoritmik düşünme; girdi → işlem → çıktı.

Algoritma ve programlama

Kesin, etkin, başı-sonu belli adımlar. Harezmi. Sıralama, seçme, yineleme. Makine dili → assembly → yüksek seviyeli diller.

Akış diyagramı

Evrensel semboller; doğrusal, mantıksal ve döngüsel gösterimler; okuma (girdi, çıktı, amaç, hipotez, doğrulama) ve tasarlama.

→ Boşluk sonraki adım / slayt
← önceki slayt
Home End ilk / son
O genel bakış   F tam ekran

Slaytlar