ALGORİTMA (ALGORITHM) M.İLKUÇAR -

Benzer belgeler
4- ALGORİTMA (ALGORITHM)

4- ALGORİTMA (ALGORITHM) M.İLKUÇAR - 1

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız.

5- AKIŞ DİYAGRAMLARI (FLOW- CHART) M.İLKUÇAR - 1

KARAR YAPILARI. Acaba hangi yöne gitmeliyim? Oturduğun yerden kalkıp, kapıya varana kadar kaç kez karar verdiniz biliyor musunuz?

8- PROGRAM YAPISAL KOMUTLARI ve. M.ilkucar MAKU MYO 1

M.ilkucar MAKU MYO 1

TBP101 (4. Hafta) Alıştırma Soruları ve Cevapları

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

Algoritma ve Programlamaya Giriş

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

ALGORİTMA VE PROGRAMLAMA I

Basit Algoritma Akış Diagramı Örnekleri

Bireylerin yaşadığı çevreye uyum sağlaması durumunda ortaya çıkan olumsuzluklara PROBLEM denir.

BİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları

ALGORİTMA ÖRNEKLERİ ve YAZILIYA HAZIRLIK SORULARI

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK

Döngüsel Akış Diagramı Algoritmaları

BLGM BÖLÜM. Problem Çözme Kavramları (Algoritma ve Akış Şemaları)

BLG 1306 Temel Bilgisayar Programlama

BÖLÜM 2: ALGORİTMALAR

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

Hafta 4 Döngü Yapıları

Hafta 5 Algoritma Örnekleri ve Analizi

Microsoft Office Excel 2007

EXCEL DE ARİTMETİKSEL İŞLEMLER

Dr. Musa KILIÇ Öğretim Görevlisi

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

C SHARP UYGULAMA ÇALIŞMASI

Algoritma ve Akış Diyagram Örnekleri

Her zaman izlediğimiz yöntem örneklerle açıklamak olduğuna göre ne duruyoruz hemen örneklere geçelim

Algoritma ve Programlama: Karar Yapıları ve Döngüler

Olimpiyat Soruları. sonuçları tekrar fonksiyonda yerine koyup çıkan tüm sonuçları toplayan program (iterasyon sayısı girilecek)

ALGORİTMA VE PROGRAMLAMA I

Ders 7: Döngüler. Giriş. 7.1 while Döngüsü

PROBLEM ÇÖZME PROGRAMLAMA ve ÖZGÜN ÜRÜN GELİŞTİRME

BPR152-Algoritma ve Programlama II Uygulama -8

ALGORİTMA NEDİR? (Adım adım işlem basamaklarının yazılmasıdır.)

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-4 Döngü Yapıları. Yrd. Doç. Dr. Ümit ATİLA

Programlama Temelleri. Ders notları. Öğr.Gör. Hüseyin Bilal MACİT 2017

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Algoritma Geliştirmek, Satır Kod)

Programlama Temelleri Dersi - Algoritma Örnekleri-v0.2

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 8

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA. Yazılım Nedir Algoritma Akış Seması Örnekler

KBÜ. TBP101 Programlama Temelleri. Öğr. Gör. Dr. Abdullah ELEN KARABÜK ÜNİVERSİTESİ.

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

SİNOP ÜNİVERSİTESİ MESLEK YÜKSEKOKULU MEKATRONİK PROGRAMI

BMT 101 Algoritma ve Programlama I 3. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1

BMT 101 Algoritma ve Programlama I 3. Hafta (Örnekler) Yük. Müh. Köksal GÜNDOĞDU 1

YUVARLAMA FONKSİYONLARI

Algoritma kelimesinin kökeni:

Örnek bir Algoritma. Örneğimiz bir insanın evden çıkıp işe giderken izleyeceği yolu ve işyerine girişinde ilk yapacaklarını tanımlamaktadır.

T.C. İstanbul Üniversitesi Cerrahpaşa Tıp Fakültesi İngilizce ve Türkçe Tıp Programları

Cerrahpaşa Tıp Fakültesi İngilizce ve Türkçe Tıp Programları

KARABÜK ÜNĠVERSĠTESĠ TEKNOLOJĠ FAKÜLTESĠ MEKATRONĠK MÜHENDĠSLĠĞĠ BÖLÜMÜ

Fortran da kullanılan giriş çıkış komutları PRINT, WRITE ve READ dir.

3- ARİTMETİK İFADELERİN YAZILMASI. M.İLKUÇAR - imuammer@yahoo.com

BMT 101 Algoritma ve Programlama I 7. Hafta. Yük. Müh. Köksal Gündoğdu 1

T.C. İstanbul Üniversitesi Cerrahpaşa Tıp Fakültesi İngilizce Tıp Programı. 1., 2. ve 3. Sınıf Ders Kurulları Başarı Analizi

BİL-142 Bilgisayar Programlama II

PROGRAMLAMA TEMELLERİ DERSİ ÖZETİ

C++ Operatörler (Operators)

BİLGİSAYAR PROGRAMLAMA DERSİ

D İ Z İ L E R A R R A Y S

Erzurum Teknik Üniversitesi Mühendislik Mimarlık Fakültesi Bilgisayar Programlama Dersi Ödevi Soru

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

ALGORİTMAYA GİRİŞ. Program: Belirli bir işi gerçekleştirmek için gerekli komutlar dizisi olarak tanımlanabilir.

HÜPP PYTHON I.HAFTA ALGORİTMA MANTIĞI, AKIŞ DİYAGRAMLARI VE PYTHON'A GİRİŞ

ÖRNEK ALGORİTMA VE AKIŞ ŞEMALARI. Örnek 1: Klavyeden girilen 2 sayının toplamını bulan programın algoritma ve akış şemasını yapınız.

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA


ALGORİTMA KAVRAMI. Bir sorunu / problemi çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı mantıksal adımların tümüne algoritma denir.

Algoritmanın Hazırlanması

ALGORİTMA TASARIMI VE SCRATCH UYGULAMASI

İnternet Programcılığı Dersi 2.Dönem Ders Notu

BİLİŞİM TEKNOLOJİLERİ 6. SINIF DERS NOTLARI 2

ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

C++ Dilinde Bazı Temel Algoritmalar

1. BÖLÜM. Sayılarda Temel Kavramlar. Bölme - Bölünebilme - Faktöriyel EBOB - EKOK. Kontrol Noktası 1

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

İLKEL VERİ TİPLERİ, STRINGLER VE KONSOL G/Ç

PROGRAMLAMA DİLLERİ I

DOĞU AKDENİZ ÜNİVERSİTESİ MATEMATİK BÖLÜMÜ 23. LİSELERARASI MATEMATİK YARIŞMASI

BPR152-Algoritma ve Programlama II Uygulama -12

MATEMATİK DENEMESİ +3

Temel Excel Kullanım Bilgisi

BMT 101 Algoritma ve Programlama I 8. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1

Bağıl Değerlendirme Sistemi ile ilgili Bilgi Notu

I=[1,0,0,0;0,1,0,0;0,0,1,0;0,0,0,1] % 4x4 lük birim matris

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ

Program AkıĢ Kontrol Yapıları

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ

BİL1001 Bilgisayar Bilimlerine Giriş 1

ÖRNEK 1:Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi yazılır.

MatLab. Mustafa Coşar

GAZİ ÜNİVERSİTESİ ÖĞRENCİ İŞLERİ BİLGİ SİSTEMİ NOT GİRİŞİ KULLANIM KILAVUZU

Algoritma ve Programlamaya Giriş. Mustafa Kemal Üniversitesi Kırıkhan Meslek Yüksekokulu Bilgisayar Teknolojileri Bölümü

Transkript:

ALGORİTMA (ALGORITHM)

DÖNGÜLER (LOOPS) Döngü : Koşul sağlandığı sürece (true), işlem yada işlemlerin tekrarlanması. Örneğin; ekrana 100 adet * yazdırılması, x! v.b. gibi işlemlerde döngüler kullanılır. (koşul ) İşlemler

DÖNGÜLER (LOOPS) (koşul ) İşlemler İşlemler (koşul ) Koşul BAŞTA Koşul SONDA

Örn: Ekrana 10 adet * yazdıran algoritma : 10- BAŞLA 20- say 1 30- YAZ * 40- say say + 1 50- EĞER ( say <=10 ) GİT 30 60- BİTİR EKRAN ÇIKTISI * * * * * * * * * *

Örn: 1 den 5 e kadar olan sayıları, sırayla ekrandan yazdıran algoritma : 10- BAŞLA 20- X 1 30- YAZ X 40- X X + 1 50- EĞER ( X < 6 ) GİT 30 60- BİTİR EKRAN ÇIKTISI 1 2 3 4 5 Soru-1 : 50. satırda GİT 30 yerine GİT 20 yaparsak ne olur? Soru-2 : 50. satırı, EĞER ( x <= 6 ) GİT 30 yaparsak sonuç nasıl değişir?

Örn: 1 den 10 a kadar olan çift sayıları ekrandan yazdıran algoritma : 10- BAŞLA 20- say 0 30- say say + 2 40- YAZ say 50- EĞER ( say < 10 ) GİT 30 60- BİTİR 10- BAŞLA 20- say 0 30- say say + 1 40- if (say % 2=0 ) YAZ say 50- EĞER ( say <= 10 ) GİT 30 60- BİTİR Not: % (mod) kalanı veren bölme işlemi

Örn: 1 den 10 a kadar olan tek sayıların toplamını bulup ekrandan yazdıran algoritma : 10- BAŞLA 20- say 1, top 0 30- top top + say 40- say say + 2 50- EĞER ( say <= 10 ) GİT 30 60- YAZ top 70- BİTİR say top 1 0 (0+1)=1 (1+2)= 3 (1+3)= 4 (3+2)= 5 (4+5)= 9 (5+2)=7 (7+2)=9 (9+2)=11 (9+7)= 16 (16+9)= 25 25

Örn: n! işlemini yapan algoritma : n=3 için yani 3! = 10- BAŞLA 20- OKU n 30- say 1, f 1 40- EĞER (n = 0 VEYA n=1) ise GİT 80 50- f f * say 60- say say + 1 70- EĞER ( say <= n ) GİT 50 80- YAZ f 90- BİTİR n say f 3 1 1 1 2 2*1=2 3 2*3=6 4 3!= 6

4.6. SINIRI BELLİ OLMAYAN DÖNGÜLER Döngünün kaç kez döneceği belli değildir. Döngünün devam koşulu döngü içerisinde döngü şartını değiştirecek bir duruma bağlıdır ya da döngüye devam edilip edilmeyeceği sorusuna göre şekillenecektir.

Örn: Klavyeden Hayır (H) cevabı girilene kadar, klavyeden girilecek sayıların toplamını bulup ekrandan yazdıran algoritma : 10- BAŞLA 20- OKU x 30- top top + x 40- YAZ Devam edilecek mi? [E/H+ 50- OKU cevap 60- EĞER ( cevap = E ) ise GİT 20 70- YAZ top 80- BİTİR

Örn: Sayı tahmin oyunu: Sistem rastgele bir sayı tutar ve oyuncu bu sayıyı tahmin etmeye çalışırız. Oyuncu bir sayı girer. Girilen sayı ile sistemin tuttuğu sayı karşılaştırılarak AŞAĞI veya YUKARI şeklinde sistem uyarı vererek oyuncuyu yönlendirir. Sistemin tuttuğu sayı bulana kadar oyuncu sayı tahmin etmeye devam eder. 10- BAŞLA 20- say 0 30- r rastgele sayı türet 40- YAZ Tahmin Giriniz 50- OKU tahmin 60- say say + 1 70- EĞER ( tahmin < r) ise YAZ YUKARI GİT 40 80- EĞER ( tahmin > r ) ise YAZ AŞAĞI GİT 40 90- YAZ say. Tahminde buldunuz 100- BİTİR

4.7. İÇ İÇE DÖNGÜLER (nested loops) I- içteki döngü, dıştaki döngünün bir komut satırı gibidir. II- Birbirlerini kesemezler KOMUT 1 DÖNGÜ N KOMUT 2 DÖNGÜ K N * K kez çalışır N kez çalışır KOMUT 3

İÇ İÇE DÖNGÜLER DÖNGÜ N KOMUTLAR 1 DÖNGÜ K KOMUTLAR 2!!! DÖNGÜLER BİRBİRİNİ KESEMEZ KOMUTLAR 3

Örn: Yandaki şekildeki gibi bir ekran çıktısı verebilecek algoritma ; 10- BAŞLA 20- satır 1 30- sütun 1 40- sütun sütun + 1 50- YAZ * 60- EĞER (sütun <= 4 ) GİT 40 70- satırbaşı YAP (YAZ) 80- satır satır + 1 90- EĞER (satır <= 4 ) GİT 30 100- BİTİR Satır 4. satır, 1. sütun Sütun * * * * * * * * * * * * * * * * Soru: Yandaki ekrandaki gibi çıktı vermesi için algoritmada ne gibi değişiklik yapılmalıdır. * * * * * * * * * *

Örn: Yandaki şekildeki gibi bir ekran çıktısı verebilecek algoritma ; 10- BAŞLA 20- satır 1 30- sütun 1 40- sütun sütun + 1 50- YAZ 60- EĞER (sütun < (6-satir) ) GİT 40 70- YAZ * 80- satırbaşı YAP * * * * * 90- satır satır + 1 100- EĞER (satır <= 5 ) GİT 30 110- BİTİR

Örn: Yandaki şekildeki gibi bir ekran çıktısı verebilecek algoritma ; 10- BAŞLA 20- satır 1 30- sütun 1 40- YAZ sütun 50- sütun sütun + 1 60- EĞER ( sütun <= satir ) GİT 40 1 1 2 1 2 3 1 2 3 4 70- satırbaşı YAP (YAZ) 80- satır satır + 1 90- EĞER (satır <= 4 ) GİT 30 100- BİTİR Soru : Ekran çıktısı yandaki şekildeki gibi olması için algoritmada nasıl değişik yada değişiklikler yapılmalıdır? 1 2 2 3 3 3 4 4 4 4

Örnek: Çarpım tablosunu yazdıran algoritmayı yazınız? 10-Başla 20- a 1 30- b 1 40- YAZ a*b 50- b b+1 60- Eğer(b<=9) ise Git 40 70- Satırbaşı Yap 80- a a+1 90- Eğer(a<=9) ise Git 30 100- BİTİR 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 2 4 6 8 10 12 14 16 18 3 3 6 9 12 15 18 21 24 27... 9 9 18 27 36 45 54 63 72 81

4.5. EN BÜYÜK veya EN KÜÇÜK Bulma: 4- ALGORİTMA Bir grup veri içerisinden en büyüğünü veya en küçüğünü bulma işlemidir. EN BÜYÜK bulunurken; herhangi biri en büyük kabul edilip diğerleri ile tek tek karşılaştırılır. Karşılaştırma esnasında elimizdekinden daha büyük bir değer bulursak onu en büyük olarak alıp karşılaştırma işlemine kaldığımız yerden devam edilir. Tüm veriler karşılaştırıldığında elimizdeki veri EN BÜYÜK veridir. EN KÜÇÜK bulma işlemi de aynı şekilde yapılır. Tek fark karşılaştırma yaparken daha küçüğü var mı diye bakılır.

Örn: Klavyeden girilen üç sayıdan en büyüğünü bulup ekrandan yazdıran algoritma : 10- BAŞLA 20- OKU x, y, z 30- eb x 40- eğer ( y > eb ) ise eb y 50- eğer ( z > eb ) ise eb z 60- YAZ eb 70- BİTİR

Örn: Klavyeden Hayır (H) cevabı girilene kadar, klavyeden girilecek sayılardan en büyüğünü bulup ekrandan yazdıran algoritma : 10- BAŞLA 20- eb 0 30- OKU x 40- eğer ( x > eb ) ise eb x 50- YAZ Devam edilecek mi? Evet *E+ 60- OKU cevap 70- EĞER ( cevap = E ) GİT 30 80- YAZ eb 90- BİTİR

Soru işareti

ÇALIŞMA SORULARI 1- Decimal (10 tabanlı) sayıyı binary (2 tabanlı) sayıya çeviren algoritmayı yazınız. 2- Klavyeden girilecek N sayısına kadar olan ASAL sayıları ekrana yazdıran algoritmayı yazınız. 3- Üç basamaklı, basamaklarının küpleri toplamı kendisine eşit olan tam sayılara Armstrong sayı denir. Buna göre 100-1000 arasındaki Armstrong sayılarını bulan algoritmayı yazınız. 4- x y işlemini yapan algoritma ( x y : y adet x in çarpımıdır ). 5-Bir işçinin maaşı (m), mesai saati (ms), bir saatlik mesai ücreti (mü), evli olup olmadığı (mh), evli ise eşinin çalışıp çalışmadığı (eçd), çalışmıyor ise 89 TL eş yardımı verilecektir. Evli ise çocuk sayısına (çs) göre en çok iki çocuğa çocuk başı 15 TL verilir. Aşağıdaki kriterler de göz önüne alınarak ay sonunda işçinin eline geçecek net miktarı bulup yazdıran algoritmayı yazınız. Toplam >= 3000 TL ise %20 kesinti 3000>Toplam >= 2000 TL ise %15 kesinti Toplam < 2000 TL ise % 10 kesinti

Soru: Klavyeden girilecek N sayısına kadar olan ASAL sayıları ekrana yazdıran algoritmayı yazınız? 10-Başla 20-OKU N 30-Eğer (N=2) ise YAZ N Git 130 40- k 3 50- asal true 60- y 2 70- Eğer( (k%y)=0 ) ise asal false 80- y y+1 90- Eğer( y < k) ise Git 70 100- Eğer( asal=true) ise YAZ k 110- k k+1 120- Eğer( k < N) ise Git 50 130- BİTİR

Üç basamaklı, basamaklarının küpleri toplamı kendisine eşit olan tam sayılara Armstrong sayı denir. Örneğin: 371 = 3^3 + 7^3 + 1^3. Bu program İç-içe geçmiş 3 döngü ile bütün Aramstrong sayıları bulur. 10-Başla 20- a 1 30- b 1 40- c 1 50- sayi 100*a + 10*b + c 60- kup a*a*a + b*b*b + c*c*c 70- Eğer( sayı =kup ) ise YAZ sayı 80- c c+1 90- Eğer( c <=9) ise Git 50 100- b b+1 110- Eğer(b<=9) ise Git 40 120- a a+1 130- Eğer(a<=9) ise Git 30 153 370 371 407 140- BİTİR

Cevap: x y işlemini yapan algoritma :(x y : y adet x in çarpımıdır ) 10- BAŞLA 20- OKU x, y 30- say 1, us 1 40- eğer (y = 0 ) ise GİT 80 50- us us * x 60- say say + 1 70- EĞER ( say <= y ) GİT 50 80- YAZ us 90- BİTİR

Çalışma Sorusu: Karesi sağdan n dijit, soldan n-1 dijitin toplamına eşi olan sayılara Kaprekar Sayıları denir. Örneğin: 9 2 = 81 8 + 1 = 9, 297 2 = 88209 88+209=297 1 ile 1000 arasındaki tamsayılar içinde kaprekar olanlarını bulacak algoritmayı yazınız? Çalışma Sorusu: Saat, dakika, saniye hesaplayan algoritmayı yazınınız.

Soru: Vize (%30) ve Final (%70) notuna göre harf notunu hesaplayıp yazdıran algoritmayı yazınız. ort >=90 ise harf not AA 90>ort >=85 ise harf not BA 85>ort >=80 ise harf not BB 80>ort >=75 ise harf not CB 75>ort >=70 ise harf not CC 70>ort >=60 ise harf not DC 60>ort >=50 ise harf not DD 50>ort >=40 ise harf not EF ort < 40 ise harf not FF

Örn:Vize (%30) ve Final (%70) notuna göre harf notunu hesaplayıp yazdıran algoritmayı yazınız. 10- Başla 20- Vize ve Final Oku 30- ort Vize * 0.3 + Final * 0.7 40- Eğer (ort >= 90) ise harfnot AA 50- Eğer (90> ort AND ort >= 85) ise harfnot BA 60- Eğer (85> ort AND ort >= 80) ise harfnot BB 70- Eğer (80> ort AND ort >= 75) ise harfnot CB 80- Eğer (75> ort AND ort >= 70) ise harfnot CC 90- Eğer (70> ort AND ort >= 60) ise harfnot DC 100- Eğer (60> ort AND ort >= 50) ise harfnot DD 110- Eğer (50> ort AND ort >= 40) ise harfnot EF 120- Eğer (ort < 40) ise harfnot FF 130- YAZ harfnot 140- Bitir ort >=90 ise harf not AA 90>ort >=85 ise harf not BA 85>ort >=80 ise harf not BB 80>ort >=75 ise harf not CB 75>ort >=70 ise harf not CC 70>ort >=60 ise harf not DC 60>ort >=50 ise harf not DD 50>ort >=40 ise harf not EF ort < 40 ise harf not FF