Algoritma ile Problem Çözme
ve Akış Diyagramı
Problemi kavramaktan algoritmaya, algoritmadan akış diyagramına: programlamanın düşünme temeli.
Ünite
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
Semtinizde herkesi etkileyen bir problem belirleyin. Sizi nasıl etkiliyor? Çözüm önerileriniz neler?
Problem nedir?
İnsan hayatının her anında karşılaşılan zorluk ve sorun; zihinsel karmaşa, engel, çözülmesi gereken durum.
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.
İki tür problem
Belirli bir sırayı izleyerek çözülür. Farklı çözümler olsa da istenen çıktı aynıdır.
Farklı zorluk seviyesinde alt problemlere ayrılır.
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.
Karmaşık problem → alt problemler
Eğitimde teknoloji kullanımı
Bilgi güvenliği
- 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.
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.
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.
- Şarj cihazının parçalarını çıkartınız.
- Şarj cihazının parçalarını birleştiriniz.
- Şarj cihazını prize takınız.
- Diğer ucunu dizüstü bilgisayara takınız.
- Dizüstü bilgisayarı açınız.
- Çalışmaya devam ediniz.
Problem çözme süreci: 6 adım
Görsel 2.1 · Problem çözme adımları — süreç döngüseldir: değerlendirme başarısızsa adımlar baştan incelenir.
Ş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.
Girdi: kitap, bilgisayar, genel ağ, yazılım, oda, personel
Çıktı: kütüphane
Okulun merkeze uzak olması, meslek lisesi olması, bilgisayar-elektrik-matbaa alanlarının bulunması.
- 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
Seç, planla, değerlendir
Çözüm yollarından okulun şartlarına en uygun olanlar belirlenir.
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.
Kütüphane sorunsuz kurulduysa problem sonlanır. Aksaklık varsa ilgili alt problemin planına dönülür ve düzenlenir.
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.
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.
Üç düşünme becerisi
Problemi nesnel ve sistematik analiz etmek, düşünce kalıplarını sorgulamak. Analiz, yorumlama, kendini düzeltme, çıkarım, açıklama, değerlendirme.
Değişik bakış açılarıyla bakıp yeni ve özgün fikirlerle çözmek. Eleştirel düşünmeden farkı: özgün fikir üretmek.
Problemi küçük parçalara ayırmak, olası tüm durumları düşünmek, adım adım uygun yönergeleri izlemek.
Yaygın teknikler
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?
- 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.
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.
Girdi
sayı
İşlem
Sayıyı oku. Karesini hesapla. Karesini yazdır.
Çıktı
sayının karesi
Girdi
fiyat, KDV
İşlem
Fiyatı oku. KDV’yi oku. KDV’li fiyatı hesapla ve yazdır.
Çıktı
KDV’li satış fiyatı
Bir sosyal medya içerik üreticisinin etkileşimi son haftalarda çok düştü. Problemi alt basamaklara ayırarak çözünüz.
| Alt problem | Girdi | İşlem | Çıktı |
|---|---|---|---|
| Hedef kitle iyi analiz edilmemiş | içerik, hedef kitle | İlgi alanlarını ve davranışları incele; uygun içerik üret | Hedef kitleye uygun içerik |
| İçerik kalitesi yetersiz | içerik | Kaliteyi yükselt; güncel, popüler ve çeşitli içerik üret | Kaliteli, güncel, farklı içerik |
| Etkileşim yöntemi ve zaman | içerik, etkileşim yöntemleri, zaman | Takipçilere soru sor, yorumlara yanıt ver, en aktif saatte paylaş | Artan etkileşim |
| Teknik problemler | ses, görüntü, video, bağlantı hızı | Ses ve görüntü kalitesini iyileştir, bağlantı hızını yükselt | Kaliteli ses-görüntü, hızlı yüklenen videolar |
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
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.
Önemli olan; kısa zamanda ve en az adımla doğru sonuca ulaştıran çözüm yolunu belirlemektir.
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.
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ı
İ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.
Kurabiye yapma algoritmasının adımlarını sıralayınız.
- Başla.
- Kaba tereyağ, şeker, yumurta koy.
- Tereyağ, şeker ve yumurtayı karıştır.
- Un ve kabartma tozu ekle.
- Yoğur.
- Fırın tepsisini yağla.
- Hamurdan parçalar koparıp yuvarla.
- Hamurları tepsiye yerleştir.
- Fırını çalıştır.
- Tepsiyi fırına yerleştir.
- Isıtılmış fırında pişir.
- Kurabiyeleri çıkar.
- Bitir.
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.
- Başla.
- Genel ağ tarayıcısını aç.
- E-posta hizmetinin sayfasına git.
- “Hesap oluştur” düğmesine tıkla.
- Ad, soyad ve doğum tarihini gir.
- Kullanıcı adını seç.
- Güçlü bir şifre belirle ve tekrar gir.
- Kurtarma bilgilerini (telefon, yedek e-posta) gir.
- Kullanım koşullarını oku ve onayla.
- Bitir.
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.
Hisab el-cebir ve el-mukabala (Cebir ve Denklem Hesabı Üzerine Kitap)
40 + 40 dk · Web 2.0 aracı · Poster Değerlendirme Formu
- Harezmi’nin hayatını araştırın.
- Kitabı ile algoritma bağlantısını araştırın.
- Görsel araştırması yapın.
- 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?
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.
Tüm aşamalar sırayla uygulanır.
Adımlar bir şarta bağlanır; şarta göre bazı adımlar uygulanır, bazıları atlanır.
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.
A’dan başlayıp B’ye kadar C artışla giden sayıların toplamı:
- Başla.
- A’yı oku.
- B’yi oku.
- C’yi oku.
- Toplam = 0
- Sayaç = A
- Toplam = Toplam + Sayaç
- Sayaç = Sayaç + C
- Eğer Sayaç <= B ise 7. adıma git.
- Toplamı yaz.
- Bitir.
| A | B | C | Toplam | Sayaç | Açıklama |
|---|---|---|---|---|---|
| 5 | 30 | 10 | 0 | 5 | 6. adıma kadar |
| 5 | 15 | 7–8. adım; 15 <= 30 ✓ | |||
| 20 | 25 | Tekrar; 25 <= 30 ✓ | |||
| 45 | 35 | 35 <= 30 ✗ → döngü biter |
45
5 + 15 + 25 = 45
Bu algoritmada ne yanlış?
- Genel ağ tarayıcısına tıkla.
- Başla.
- Arama kutusuna konu yaz.
- Bilgisayarı aç.
- 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.
- Başla.
- Bilgisayarı aç.
- Genel ağ tarayıcısına tıkla.
- Adres satırına arama motorunun adresini yaz.
- Arama kutusuna konuyu (“ogm materyal”) yaz.
- Ara düğmesine bas.
- Sonuçları incele.
- Bitir.
“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.
- 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.
Tüm okulu ilgilendiren bir problem belirleyin; girdi, işlem ve çıktısını yazıp algoritmasını hazırlayın.
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.
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.
Kullanım alanları
Örn. Python; veri analizi, otomasyon ve makine öğrenimi için kapsamlı kütüphanelere sahiptir.
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.
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.
Üç 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
İki sayıyı al, topla ve sonucu ekrana yaz.
OKU a, b
toplam ← a + b
YAZ toplam
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
Diyagramı çizdikten sonra programı herhangi bir yüksek seviyeli dilde yazmak kolaylaşır.
Farklı ülkelerdeki programcılar aynı diyagramı aynı şekilde anlar. Kaynaklarda küçük farklar olsa da genel hatlar korunur.
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.
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)
Ekmek yapma algoritmasını doğrusal akış diyagramıyla gösteriniz.
Bilgi Notu: Doğrusal akış diyagramlarında iş akışı algoritmadaki sırayla art arda gerçekleşir.
İki sayının toplamını bulan ve sonucu ekrana yazdıran uygulamanın algoritmasını ve akış diyagramını oluşturunuz.
- Başla.
- Sayı1 ve Sayı2’yi gir.
- Toplam = Sayı1 + Sayı2
- Toplamı ekrana yazdır.
- Bitir.
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).
Yazılı sınavdan 70 ve üzeri alan direksiyon sınavına girebilir, 70’in altında alan tekrar yazılı sınava girer.
- Başla.
- Ehliyet sınavı puanını gir.
- Puan 70’in altındaysa 4. adıma, değilse 5. adıma git.
- “Ehliyet yazılı sınavına tekrar girmelisin.” yazdır, 6. adıma git.
- “Sınavı geçtin. Direksiyon sınavına girebilirsin.” yazdır.
- Bitir.
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.
- Başla.
- A ve B sayılarını gir.
- A, B’den büyükse 4. adıma, değilse 5. adıma git.
- A’yı yazdır, 6. adıma git.
- B’yi yazdır.
- Bitir.
Bilgi Notu: Mantıksal akış diyagramlarında iş akışı koşulun doğruluğuna göre yön değiştirir.
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).
1’den 10’a kadar olan sayıları ekrana yazdıran uygulamanın algoritmasını ve akış diyagramını oluşturunuz.
- Başla.
- Döngünün başlangıç değerini belirle (i = 1).
- i, 11’den küçükse 4. adıma git; değilse 5. adıma git.
- i’yi ekrana yaz, i’yi 1 artır, 3. adıma git.
- Bitir.
1 2 3 4 5 6 7 8 9 10
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.
- Başla.
- i = 1
- i, 30’dan küçük veya eşitse 4. adıma; değilse 7. adıma git.
- i. öğrencinin adını ve soyadını gir.
- Ad ve soyadı listeye ekle.
- i’yi 1 artır, 3. adıma git.
- Listeyi yazdır.
- Bitir.
- 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.
Bir diyagramı nasıl okuruz?
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.
Diyagramın girdi ve çıktılarını belirleyip amacını tahmin ediniz.
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)
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.
- Başla.
- Yılı gir.
- Yıl 400’e tam bölünüyorsa 6. adıma git.
- Yıl 100’e tam bölünüyorsa 7. adıma git.
- Yıl 4’e tam bölünmüyorsa 7. adıma git.
- “Artık yıl” yazdır, 8. adıma git.
- “Artık yıl değil” yazdır.
- Bitir.
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.
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.
1² + 2² + 3² = 14
BKİ’yi hesaplayıp sonuca göre durumu yazdıran programın akış diyagramını oluşturunuz.
| BKİ | Durum |
|---|---|
| < 18.5 | Zayıf |
| 18.5 – 25 | Normal |
| 25 – 30 | Hafif kilolu |
| 30 – 35 | Kilolu |
| diğer | Aşırı kilolu |
İpucu: BKİ = kilo / (boy × boy). İç içe karar yapıları (Görsel 2.8) kullanılır.
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.
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.
Hangi yapının eksik olması sürecin mantıksal akışını ve karar mekanizmasını doğrudan zayıflatır?
Her 10 dakikada bir ücret güncellemesi algoritmik açıdan en iyi nasıl açıklanır?
Boşlukları doldurun
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.
Programa dışarıdan girilen sayı, metin, kullanıcı adı, şifre gibi veriler girdi bölümünde yer alır.
Çözüm adımlarının semboller, kutular ve oklarla gösterilmesi akış diyagramı ile ifade edilir.
Birden fazla sorunun analizini ve alt problemlerin çözümünü gerektiren durumlar karmaşık problem kapsamındadır.
İşlemler sonucunda ekranda görülen sonuç çıktı olarak adlandırılır.
Problemleri küçük parçalara ayırarak çözüm geliştirmek algoritmik düşünme kavramının göstergesidir.
Veriler üzerinde yapılan toplama, karşılaştırma, sıralama ve hesaplamalar işlem bölümünü oluşturur.
Doğru mu, yanlış mı?
Yaratıcı düşünme, farklı bakış açılarıyla özgün çözümler geliştirmektir.
DAlgoritmadaki her adım açık, kesin ve anlaşılır olmalıdır.
DHer algoritma mutlaka kullanıcıdan veri almalıdır.
YGereksiz tekrar algoritmanın etkinliğini artırır.
YAkış diyagramı hataları bulmaya yardımcı olur.
DAkış diyagramları ortak semboller olmadan anlaşılabilir.
YAkış diyagramları genellikle program yazılmadan önce hazırlanır.
DBaşlangıç ve bitişi olmayan algoritma eksiktir.
DKantin sırası · Eşleştirme
Mobil sipariş, ek kasa, sınıf bazlı sıra gibi seçenekler belirlenir.
çSeçilen çözümü uygulamak için adımlar yazılır.
fTeneffüsün çoğunun sırada geçtiği fark edilir.
bMobil siparişin daha hızlı ve uygulanabilir olduğuna karar verilir.
dBekleme süresinin azalıp azalmadığı kontrol edilir.
hSorunun öğle teneffüsünde ve 9. sınıflarda yoğun olduğu belirlenir.
cBu ünitede öğrendiklerimiz
Basit ve karmaşık problem; 6 adımlı süreç; eleştirel, yaratıcı, algoritmik düşünme; girdi → işlem → çıktı.
Kesin, etkin, başı-sonu belli adımlar. Harezmi. Sıralama, seçme, yineleme. Makine dili → assembly → yüksek seviyeli diller.
Evrensel semboller; doğrusal, mantıksal ve döngüsel gösterimler; okuma (girdi, çıktı, amaç, hipotez, doğrulama) ve tasarlama.