BPR152 ALGORİTMA VE PROGRAMLAMA - II

Slides:



Advertisements
Benzer bir sunumlar
BPR151 ALGORİTMA VE PROGRAMLAMA - I
Advertisements

Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
Kontrol İfadeleri : 2.Kısım
BPR152 ALGORİTMA VE PROGRAMLAMA - II
DÖNGÜLER For While Do While.
DÖNGÜ İFADELERİ.
DÖNGÜ “Şart sağlandığı sürece” içerisindeki komut satırlarını, artış değeri adedince tekrarlayan kodlardır.
switch - case Yapısı Döngü Yapıları
ALGORİTMA ÖRNEKLERİ Programlamaya Giriş
Bölüm 4 – Kontrol İfadeleri:1.kısım
Bölüm 2: Program Denetimi
OOP UYGULAMA 5.
BPR151 ALGORİTMA VE PROGRAMLAMA - I
BPR152 ALGORİTMA VE PROGRAMLAMA - II
BPR151 ALGORİTMA VE PROGRAMLAMA - I
BPR151 ALGORİTMA VE PROGRAMLAMA - I
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 4: Diziler
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Özyinelemeli(Recursive) Algoritma Tasarımı
Karar ifadeleri ve Döngüler
Nesne Tabanlı Programlama Dersi Edirne Kız Teknik ve Meslek Lisesi Hazırlayan : Nuri AVCI
BPR151 ALGORİTMA VE PROGRAMLAMA - I
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Bölüm 3 – Yapısal Programlama
DÖNGÜ İFADELERİ.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Yapısal Program Geliştirme – if, if-else
BPR152 ALGORİTMA VE PROGRAMLAMA - II
While Döngüsü Tekrarlama deyimidir. Bir küme ya da deyim while kullanılarak bir çok kez yinelenebilir. Yinelenmesi için koşul sınaması döngüye girilmeden.
BPR151 ALGORİTMA VE PROGRAMLAMA - I Öğr. Gör. Bayram AKGÜL
TEST – 1.
~DÖNGÜLER~.
BPR151 ALGORİTMA VE PROGRAMLAMA - I
BPR152 ALGORİTMA VE PROGRAMLAMA - II Öğr. Gör. Bayram AKGÜL
Döngü Yapıları.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
ALGORİTMALAR VE PROGRAMLAMAYA GİRİŞ
Koşul İfadeleri ve Akış Kontrolü Yazdığımız uygulamanın hangi koşulda nasıl davranacağını belirterek bir akış kontrolü oluşturabilmek için koşul ifadelerini.
Akış Kontrol Mekanizmaları
Ders 2- Veri türleri, Karar ve Döngü Yapıları, Görsel Kontröller Aslı Ergün.
Kontrol Yapıları ve Döngüler
For Döngüsü Foreach Döngüsü While Döngüsü
Bilgisayar Programlama Güz 2011
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 2: Koşula Göre İşlem Yapma
Çoklu dallanma seçimi: switch
DÖNGÜLER.
JAVA’DA DÖNGÜLER.
BPR152 ALGORİTMA VE PROGRAMLAMA - II Öğr. Gör. Bayram AKGÜL
DÖNGÜLER.
C#’TA DÖNGÜLER onbirc.com/133.
PROGRAM DENETİM DEYİMLERİ
Outline 4.1 Giriş 4.2 Algoritmalar 4.3 Pseudocode 4.4 Kontrol İfadeleri 4.5 if tek-seçimli ifadeler 4.6 if else seçimli ifadeler 4.7 while döngü ifadeleri.
Ders 2- Veri türleri, Karar ve Döngü Yapıları, Görsel Kontröller
Akış Kontrolü ve Döngüler
Bu Günkü Konular If yapısı ve karşılaştırma operatörleri
Bugünkü Konular Döngüler ve Akış Diyagramları C de Döngü Tanımlama
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
İnternet Programlama-I
ALGORİTMA NEDİR? İster bilgisayarda, ister matematikte, isterse günlük hayatta karşımıza çıkan her problemin çözüm yolu vardır. Örneğin yemek yerken farkında.
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
O R T L G İ M A A Ve Akış şemaları.
PROGRAMLAMA TEMELLERİ Burak UZUN Bilişim Teknolojileri Öğretmeni Burak UZUN.
Algoritma ve Akış Şemaları
BM-103 Programlamaya Giriş Güz 2016 (5. Sunu)
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
PROGRAMLAMAYA GİRİŞ FORTRAN 77.
Bilgisayar Bilimi Döngüler.
Sunum transkripti:

BPR152 ALGORİTMA VE PROGRAMLAMA - II Öğr. Gör. Bayram AKGÜL bayramakgul@bartin.edu.tr http://bmyo.bartin.edu.tr/akgul

Bugünkü Konular Döngüler ve Akış Diyagramları C# ‘ta Döngü Tanımlama while döngüsü do-while döngüsü for döngüsü foreach döngüsü (listelerde ve koleksiyonlarda kullanılır. Daha sonra işlenecektir. ) İç içe döngüler Döngülerde kullanılan yardımcı ifadeler break continue goto Sonsuz Döngüler

Neden Döngüler? Programda bazı kodların tekrarlanmasını isteriz, bazen de koşul sağlandıkça bazı kodların tekrarlanmasını isteyebiliriz. Aşağıdaki örnekleri düşünelim: Klavyeden girilen bir sürü sayının toplamı an ifadesini hesaplama 1 den N’ye kadar sayıların toplamı 1 den N’ye kadar sayıların karelerini alma

Bir dizi sayının toplamını nasıl hesaplarız? Klavyeden girilecek bir dizi sayının toplamını hesaplayacak bir algoritma yazalım. Input Bir sürü sayı (kaç tane olduğunu bilmiyoruz) 0 sayı girişini bitirecek Output Girilen sayıların toplamı

Bir dizi sayının toplamını hesaplama: Algoritma Başla Toplamı 0 a eşitle Kullanıcıdan sayı girmesini veya 0 ile durmasını iste. Klavyeden girilen sayıyı oku Eğer sayı 0 değil ise 5.1. toplam = toplam + sayi 5.2. 3. adıma git Toplamı yazdır. Bitir

Bir dizi sayının toplamını hesaplama: Akış Diyagramı Başla toplam = 0 Sayı gir veya 0 ile dur Klavyeden Girilen Sayıyı oku sayı != 0? E toplam +=sayı H Toplamı ekrana yazdır Bitir

Bir dizi sayının toplamını hesaplama: Nasıl yapmalıyız? Açıkçası biz kullanıcı 0 girene kadar 3, 4 ve 5. basamakların sürekli çalışmasını istiyoruz. Bunun anlamı; 3, 4 ve 5. adımları bir döngü içinde çalıştırmamız gerekiyor.

an yi nasıl hesaplarız? “a” gerçek sayı, “n” tam sayı ve n>=0 olsun. Örnek, 35 i hesapla. 35 = 3*3*3*3*3 sonuc değişkeni alalım ve ilk değeri 1 olsun. sonuc = 1 (a0=1) a sayısını kendisiyle çarp ve her çarpma işleminde bir say. Sayacın ilk değeri = 0 Sayaç “n” olunca “a” sayısını “n” defa kendisiyle çarpmışız demektir.

an Hesaplama Algoritması Başla Kullanıcıdan “a” ve “n” girmelerini iste Sayacı 0 a eşitle Sonucu 1 e eşitle /* sonuc = a0 = 1 */ (sayac < n) olduğu sürece tekrarla 5.1. sonuc = sonuc * a; /* şimdi sonuc = asayac */ 5.2. sayac++; Sonucu yazdır Bitir

an Hesaplama Akış Diyagramı sayac = 0 Başla sonuc = 1 sayac < n? “a” ve “n” değerlerini giriniz sonucu yazdır H Bitir E sonuc *= a; sayac++;

an Hesaplama – Nasıl Yapmalıyız? “sayac” “n” değerine ulaşana kadar 5.1 ve 5.2 adımlarının tekrarlamalarını istiyoruz. 5.1 ve 5.2 basamaklarını koşul sağlandıkça bir döngü içinde çalışmalarını istiyoruz.

C#’ta döngü yapıları C# ta döngü tanımlama while döngüleri do-while döngüleri for döngüleri foreach (listelerde ve koleksiyonlarda kullanılır) Aşağıdaki yardımcı ifadeler döngülerin içerisinden çıkarmak için kullanılabilir. break continue goto

while Döngüsü While döngüsü koşul sağlandıkça çalışır; ta ki test edilen koşul false olursa döngü biter. Döngünün kaç defa çalışacağı bilinmediği durumlarda kullanılır. Kullanımı: koşul E H ifade1 ifade2 ... while(koşul) { ifade1; ifade2; ... }

Bir sürü sayının toplamını hesaplama: Akış diyagramı – kod int sayı, toplam = 0; Console.Write("Bir sayı girin(durmak için 0):"); int.TryParse(Console.ReadLine(), out sayı); while (sayı != 0) { toplam += sayı; Console.Write("Sayı girin(durmak için 0):"); } Console.Write("Toplam =" + toplam); Başla Bir sayi girin (n) n != 0 ? Y Toplam+=n N Bir sayi girin (n) Toplamı yazdır Bitir

an Hesaplamak için Kod int n, a, sayac = 0; int sonuc = 1; // sonuc = a^0 Console.Write("a değerini gir:"); int.TryParse(Console.ReadLine(),out a); Console.Write("n değerini gir:"); int.TryParse(Console.ReadLine(), out n); while (sayac < n) { sonuc *= a; sayac++; } Console.Write("{0}^{1} = {2} " , a, n, sonuc); sayac = 0 Başla sonuc = 1 sayac < n? “a” ve “n” değer lerini giriniz sonuc yazdır H Bitir E sonuc *= a; sayac++;

a = 3 ve n = 5 için kod izlemesi int n, sayac = 0; int a, sonuc = 1; string str; Console.Write("a değerini gir:"); str = Console.ReadLine(); int.TryParse(str, out a); Console.Write("n değerini gir:"); int.TryParse(str, out n); while (sayac < n) { sonuc *= a; sayac++; } Console.Write("{0}^{1} = {2} " , a, n, sonuc); a n sayac sonuc 3 5 1 0 < 5?  True 1 3 1 < 5?  True 2 9 2 < 5?  True 3 27 3 < 5?  True 4 81 4 < 5?  True 5 243 5 < 5?  False

an Hesaplama: Alternatif Kod int n, sayac = 0; double a, sonuc = 1; // sonuc = a^0 Console.Write("a değerini gir:"); double.TryParse(Console.ReadLine(), out a); Console.Write("n değerini gir:"); int.TryParse(Console.ReadLine(), out n); while (sayac < n) { sonuc *= a; sayac++; } Console.Write("{0}^{1} = {2} " , a, n, sonuc); while (sayac++ < n) sonuc *= a;

1+2+3+..+N işlemini hesaplama Algoritma Kullanıcıdan “n” sayısını iste i = 1 /* İterasyon değişkeni*/ toplam = 0 /* geçerli toplam*/ (i <= n) olduğu sürece tekrarla 4.1. toplam += i; 4.2. i++; Toplamı yazdır

1+2+3+..+N Hesaplama: Akış Diyagramı ve Kod Başla toplam = 0 i <= n? “n” değerini gir Toplamı yazdır H Bitir E toplam += i; i++; int n, i,toplam; Console.Write("n değerini gir:"); int.TryParse(Console.ReadLine(),out n); i = 1; toplam = 0; while (i <= n) { toplam += i; i++; } Console.Write("Toplam = " + toplam);

n=5 için Kod izleme n i top int n, i,toplam; string str; Console.Write("n değerini gir:"); str = Console.ReadLine(); int.TryParse(str, out n); i = 1; toplam = 0; while (i <= n) { toplam += i; i++; } Console.Write("Toplam = " + toplam); 5 1 1 <= 5?  True 2 1 2 <= 5?  True 3 3 3 <= 5?  True 4 6 4 <= 5?  True 5 10 5 <= 5?  True 6 15 6 <= 5?  False

1+2+3+..+N: Alternatif Kod int n, i,toplam; Console.Write("n değerini gir:"); int.TryParse(Console.ReadLine(), out n); i = 1; toplam = 0; while (i <= n) { toplam += i; i++; } Console.Write("Toplam = " + toplam); while (i <= n) toplam += i++;

1 den N sayısına kadar Sayıların Kareleri Tablosunu Oluşturma Girilen n sayısına kadar 1, 2, 3, 4, .., n sayıların karesini veren bir tablo oluşturalım. n = 6 için görünüm aşağıdaki gibi olacak +-----+-----+ | i | i*i | | 1| 1| | 2| 4| | 3| 9| | 4| 16| | 5| 25| | 6| 36|

Kareler Tablosu için Kod int i, n; Console.Write("n değerini gir:"); int.TryParse(Console.ReadLine(), out n); // tablo başlığı Console.WriteLine("+-----+-----+"); Console.WriteLine("| i | i*i |"); i = 1; while (i <= n) { // beş hanede sağa hizalayarak yazar Console.WriteLine("|{0,5}|{1,5}|" , i, i * i); i++; } // tablonun alt çizgisi i = 1 Başla i <= n? n değerini gir Tablonun alt çizgisini yazdır H Bitir E (i, i*i) yazdır i++; Başlığı yazdır

n=4 için kod izleme Console.WriteLine("+-----+-----+"); Console.WriteLine("| i | i*i |"); i = 1; while (i <= n) { Console.WriteLine("|{0,5}|{1,5}|",i,i*i); i++; } // tablonun alt çizgisi n i 4 1 1 <= 4?  True 2 2 <= 4?  True 3 3 <= 4?  True 4 +-----+-----+ | i | i*i | | 1| 1| | 2| 4| | 3| 9| | 4| 16| 4 <= 4?  True 5 5 <= 4?  False

while Örnek-1 int i = 0; Console.WriteLine("C# programlamayı nasıl buldun"); while (i < 10) { Console.WriteLine("C# Programlama çok zevkli!"); i++; } 10 defa tekrarlar (0 dan 9’a kadar) Aynı mesajı 10 defa yazar

while Örnek-2 int i = 20; Console.WriteLine("C# programlamayı nasıl buldun"); while (i < 10) { Console.WriteLine("C# Programlama çok zevkli!"); i++; } 0 defa tekrarlar (i = 20, 10’dan küçük değil) Hiç mesaj yazmayacak

Dinlediğiniz için teşekkürler… Öğr. Gör. Bayram AKGÜL