Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

BPR152 ALGORİTMA VE PROGRAMLAMA - II

Benzer bir sunumlar


... konulu sunumlar: "BPR152 ALGORİTMA VE PROGRAMLAMA - II"— Sunum transkripti:

1 BPR152 ALGORİTMA VE PROGRAMLAMA - II
Öğr. Gör. Bayram AKGÜL

2 Bu Günkü Konular Koşul İfadeleri
If yapısı ve karşılaştırma operatörleri <, <=, >, >=, ==, != Kompleks karşılaştırma ifadelerini anlama Mantıksal operatörler (!, &&, ||) Kademeli ve iç içe if yapıları

3 C# Program Yapısı using System;
/* program alan adı olmak zorunda değil*/ namespace ilk_program { // program sınıfı olmak zorunda class Program /* Main olmak zorunda */ static void Main() /* Değişkenler programda kullanılacak verileri tutar. */ Değişken Tanımlama; /* Program basamakları: I/O, hesaplamalar (ifadeler) */ ifade1; ifade2; ifadeN; }

4 Kullanıcıdan inch girmesini iste
Örnek Programı Program; bitene kadar adım adım çalışacak ifadelerden oluşur. using System; class Program { /* inch’i santimetreye dönüştürme */ static void Main() double inch; double santimetre; Console.Write("inch gir: "); inch = double.Parse(Console.ReadLine()); santimetre = inch * 2.54; Console.WriteLine("{0} inch {1} santimetre eder", inch, santimetre); } Kullanıcıdan inch girmesini iste santimetre = inch * 2.54 İnch ve santimetre yi ekrana yaz Başla Bitir

5 If yapıları ile programlar
İki farklı seçenekten birinin seçilmesi gereken durumlarda ne yapmalıyız ? Bir karşılaştırma yaparsın ve karşılaştırma sonucuna göre iki farklı ifadeden birini çalıştırırsın. Karşılaştırma, karar verme ile ilgili verdiğimiz örnekleri hatırlayın İki sayıdan büyük ve küçük olanını nasıl çözdüğümüzü hatırlayalım.

6 2 sayıdan küçük ve büyük olanını bulma
Kullanıcıdan sayı1 ve sayı2 yi girmelerini iste küçük ve büyük sayıları ekrana yazdır sayı1 < sayı2 ? küçük = sayı1 E büyük = sayı2 küçük = sayı2 büyük = sayı1 H Başla Bitir Kullanıcıdan sayı1 ve sayı2 yi girmelerini iste eğer (sayı1 < sayı2) 2.1. küçük = sayı1; 2.2. büyük = sayı2; değilse (sayı1 >= sayı2) 3.1. küçük = sayı2; 3.2. büyük = sayı1; küçük ve büyük sayıları ekrana yazdır

7 if-else İfadesi Bir karşılaştırma yaparak programın iki seçenekten birini çalıştırmasına izin verir. Kullanımı: Koşul E H ifade 1 ifade 2 if (Koşul) ifade1; [else ifade2;] Eğer koşul sonucu doğru ise (true) ifade1 çalışacak, değilse ifade2 çalışacak.

8 if-else Örnekler int finalNotu; Console.Write("Final Notu Giriniz:");
int.TryParse(Console.ReadLine(), out finalNotu ); if (finalNotu >= 50) Console.WriteLine("Geçti");

9 if-else Örnekler int finalNotu; Console.Write("Final Notu Giriniz:");
int.TryParse(Console.ReadLine(), out finalNotu); if (finalNotu >= 50) Console.WriteLine("Geçti"); else Console.WriteLine("Kaldı!");

10 Koşulun durumuna göre birden fazla ifade çalıştıracaksak ne yapmalıyız?
int finalNotu; if(finalNotu >= 50) { Console.WriteLine("Geçti!"); Console.WriteLine("Tebrikler!"); } else Console.WriteLine("Kaldı!"); Console.WriteLine("Daha iyi çalış."); blok (birleşmiş durumlar)

11 Süslü parantezlerin yeri
Süslü parantezlerin yeri bir stil sorunudur Compiler için bir sorun değildir. int finalNotu; if(finalNotu >= 45){ Console.WriteLine("Geçti! "); Console.WriteLine("Tebrikler! "); } else { Console.WriteLine("Kaldı! "); Console.WriteLine("Daha iyi çalış. "); }

12 2 tam sayıdan küçük ve büyük olanını bulma
int sayı1, sayı2, küçük, büyük; Console.WriteLine("iki sayı giriniz:"); Console.Write("Birinci Sayı:"); int.TryParse(Console.ReadLine(), out sayı1); Console.Write("İkinci Sayı:"); int.TryParse(Console.ReadLine(), out sayı2); if (sayı1 < sayı2) { küçük = sayı1; büyük = sayı2; } else küçük = sayı2; büyük = sayı1; Console.WriteLine("Büyük ={0}, Küçük ={1}", büyük, küçük); Kullanıcıdan sayı1 ve sayı2 girmelerini iste Küçük ve büyük sayıları yazdır sayı1 < sayı2 ? küçük = sayı1 E büyük = sayı2 küçük = sayı2 büyük = sayı1 H Başla Bitir

13 Programın Çalışması(1)
int sayı1, sayı2, küçük, büyük; Console.WriteLine("<iki sayı giriniz>"); Console.Write("Birinci Sayı:"); int.TryParse(Console.ReadLine(), out sayı1); Console.Write("İkinci Sayı :"); int.TryParse(Console.ReadLine(), out sayı2); if (sayı1 < sayı2) { küçük = sayı1; büyük = sayı2; } else küçük = sayı2; büyük = sayı1; Console.WriteLine("Büyük Sayı {0}, Küçük Sayı {1}", büyük, küçük); DATA sayı1 sayı2 45 ? ? ? 56 küçük büyük 45 ? ? 56 <iki sayı giriniz> Birinci Sayı: İkinci Sayı : Büyük Sayı 56, Küçük Sayı 45 45 56

14 Programın Çalışması(2)
int sayı1, sayı2, küçük, büyük; Console.WriteLine("<iki sayı giriniz>"); Console.Write("Birinci Sayı:"); string str = Console.ReadLine(); int.TryParse(str, out sayı1); Console.Write("İkinci Sayı :"); str = Console.ReadLine(); int.TryParse(str, out sayı2); if (sayı1 < sayı2) { küçük = sayı1; büyük = sayı2; } else küçük = sayı2; büyük = sayı1; Console.WriteLine("Büyük Sayı {0}, Küçük Sayı {1}", büyük, küçük); DATA sayı1 sayı2 77 ? ? ? 22 küçük büyük 22 ? ? 77 <iki sayı giriniz> Birinci Sayı: İkinci Sayı : Büyük Sayı 77, Küçük Sayı 22 77 22

15 if ifadesinde karşılaştırma işlemleri
if ifadesinin içindeki koşul iki değeri karşılaştırır ve doğru (True) veya yanlış (False) değer üretir. Koşul ifadesi olarak adlandırılır Karşılaştırma operatörleri kullanılarak biçimlendirilirler. koşul Y N ifade 1 ifade 2 büyük eşit >= büyüktür > küçük eşit <= küçüktür < eşit değil != eşittir == Anlamı Operator

16 Karşılaştırma operatörleri - Örnek
Varsayalım a = 1, b = 2, ve c = 3 olsun. True b == 2 False c != 3 (b + c) > (a + 5) (a + b) >= c a < b Karar İfade

17 Akış diyagramı 3 sayının küçük olanını bulma (1)
Başla Kullanıcıdan sayı1, sayı2 ve sayı3 ü girmelerini iste sayı1 < sayı2 ? evet hayır sayı2 < sayı3 ? evet sayı1 < sayı3 ? evet hayır hayır küçük = sayı3 küçük = sayı2 küçük = sayı3 küçük = sayı1 küçük sayıyı yazdır Bitir

18 Kod: 3 sayının küçük olanını bulma (1)
int a, b, c, kucuk; Console.WriteLine("3 sayı giriniz: "); Console.Write("1. sayı:"); int.TryParse(Console.ReadLine(), out a); Console.Write("2. sayı:"); int.TryParse(Console.ReadLine(), out b); Console.Write("3. sayı:"); int.TryParse(Console.ReadLine(), out c); if (a < b) { if (a < c) kucuk = a; else kucuk = c; } else if (b < c) kucuk = b; Console.Write("{0}, {1}, {2} sayılardan küçüğü {3}", a, b, c, kucuk);

19 Akış diyagramı 3 sayının küçük olanını bulma(2)
Start Kullanıcıdan sayı1, sayı2 ve sayı3 ü girmelerini iste küçük = sayı1 sayı2 < küçük ? evet küçük = sayı2 hayır sayı3 < küçük ? evet küçük = sayı3 hayır küçük sayıyı ekrana yazdır End

20 Kod: 3 sayının küçük olanını bulma (2)
int a, b, c, kucuk;   Console.WriteLine("3 sayı giriniz: "); Console.Write("1. sayı:"); int.TryParse(Console.ReadLine(), out a); Console.Write("2. sayı:"); int.TryParse(Console.ReadLine(), out b); Console.Write("3. sayı:"); int.TryParse(Console.ReadLine(), out c); kucuk = a; /* farzet; a en küçüğü*/ if (b < kucuk) kucuk = b; /* b daha küçük mü? */ if (c < kucuk) kucuk = c; /* c daha küçük mü? */ Console.WriteLine("{0}, {1}, {2} sayılardan küçüğü {3}", a, b, c, kucuk);

21 Mantıksal Operatörler
Bazı durumlarda daha kompleks karşılaştırma işlemleri yapmak isteyebilirsiniz. (x eşittir 5 mi) VEYA (x eşittir 8 mi) (x == 5) || (x == 8) (x büyüktür 5 mi) VE (x küçüktür 10 mu) (x > 5) && (x < 10) (x küçüktür y mi) VE (y eşit değil 20 mi) (x < y) && (y != 20) C# programlama dili daha komplex karşılaştırma işlemleri yapmak için 3 mantıksal operatör sunuyor AND (&&), OR (||), NOT (!)

22 Mantıksal Operatörler
Karşılaştırma işlemlerini doğru mu (True) veya yanlış mı (False) diye birleştirmede kullanılır. Mantıksal operatörler kullanılarak oluşturulan kompleks karşılaştırmalar if ifadelerinin içinde kullanılabilir. Sembol Anlamı && AND – ve || OR – veya ! NOT – değil a b a && b a || b False True

23 Lojik Operatörler – örnek-1
Varsayalım; a bir int değişken ve değeri 7, c bir char değişken ve değeri ‘r’ İfade Sonuç (a >= 6) && ( c == ‘r') True (a >= 6) || ( c == 'A') (a >= 6) && ( c == 'A') False (a >= 6) && ( c == ‘R') (a != 6) || ( c == ‘R') (a < 6) || ( c == ‘r')

24 Lojik Operatörler – örnek-2
int sicaklik = 75; double yagmur = 0.35; if((sicaklik > 70 && sicaklik < 85)) Console.WriteLine("sıcak"); if((sicaklik > 70 && yagmur < 0.4)) Console.WriteLine("güzel"); if((sicaklik < 50 || sicaklik >85)) Console.WriteLine("çok sıcak/bulutlu"); if((yagmur > 0.3 && yagmur < 0.7)) Console.WriteLine("rüzgarlı"); sıcak güzel rüzgarli

25 Lojik Operatörler (3) /* Eğer a eşittir 4 VEYA a eşittir 10 */
if (a == 4 || a == 10){ ... } else { } /* x 2 VE 20 arasında mı*/ if (x >= 2 && x <= 20){ ... } /* y 20’den büyük VE x eşit DEĞİL 30’a */ if (y > 20 && x != 30){ ... }

26 Kademeli if deyimleri Bazen birden fazla koşulu test etmek isteriz, ta ki biri sağlanana kadar. Örneğin “n” sayısının 0 a eşit , 0 dan büyük veya 0 dan küçük olmasını test etmek istiyoruz. if (n < 0) Console.Write("n sayısı 0'dan küçük"); else { if (n == 0) Console.Write("n sayısı 0'a eşit"); else Console.Write("n sayısı 0'dan büyük"); } İkinci if deyimini else içinde kullanmaktansa onun yerine aşağıdaki gibi kullanabiliriz. Kademeli if olarak adlandırılıyor. if (n < 0) Console.Write("n sayısı 0'dan küçüktür"); else if (n == 0) Console.Write("n sayısı 0'a eşittir"); else Console.Write("n sayısı 0'dan büyüktür");

27 kademeli if Yazım Kuralı
if (durum1) ifade1; else if (durum2) ifade2; else if (durum3) ifade3; else ifadeN;

28 kademeli if Örneği Örneğin not ortalamasının aşağıdaki tabloya göre harf notuna denk geldiğini varsayalım: int not_ort; if (not_ort >= 90) Console.Write("Geçti: Notun AA"); else if (not_ort >= 80) Console.Write("Geçti: Notun AB"); else if (not_ort >= 70) Console.Write("Geçti: Notun BB"); else if (not_ort >= 60) Console.Write("Geçti: Notun BC"); else if (not_ort >= 50) Console.Write("Geçti: Notun CC"); else Console.Write("Kaldı!"); Not Aralığı Harf Notu 90-100 AA 80-89 AB 70-79 BB 60-69 BC 50-59 CC 0-49 Kaldı!

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


"BPR152 ALGORİTMA VE PROGRAMLAMA - II" indir ppt

Benzer bir sunumlar


Google Reklamları