BBS515 Nesneye Yönelik Programlama. Ders 3 Zümra Kavafoğlu

Benzer belgeler
MTK467 Nesneye Yönelik Programlama. Hafta 4 - Döngüler Zümra Kavafoğlu

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

if (ad == "Sabri") Console.WriteLine("Merhaba Sabri. Ne zamandır gözükmüyodun...");

BBS515 Nesneye Yönelik Programlama. Ders 2 Zümra Kavafoğlu

ALGORİTMA VE PROGRAMLAMA I

KONTROL YAPILARI JAVADA UC TURLU KONTROL YAPISI VARDIR BUNLAR İF ELSE İF ELSE İF SWİTCH YAPILARIDIR. IF ELSE YAPISI if (deger) { }else {

DÖNGÜLER BMÜ-111 ALGORİTMA VE PROGRAMLAMA-I YRD. DOÇ. DR. İLHAN AYDIN

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

Java da Program Denetimi ve Operatörler

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

BBS515 Nesneye Yönelik Programlama. Ders 2 Zümra Kavafoğlu

Karşılaştırma İşlemleri ve Koşullu İfadeler

Program AkıĢ Kontrol Yapıları

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Bölüm 4 C de Program Kontrolü

Algoritma ve Programlamaya Giriş II JAVA İLE PROGRAMLAMA. Muhammet BAYKARA

Akış Kontrol Mekanizmaları

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

Internet Programming II

Programın Akışının Denetimi. Bir arada yürütülmesi istenen deyimleri içeren bir yapıdır. Söz dizimi şöyledir:

Lab Notları 4. for ( ilklenme yeri bir kez çalışır ; Kontrol yeri her döngüde bakılır ; Güncelleme yeri her döngüde )

YZM 2105 Nesneye Yönelik Programlama

İçerik. Java da İşleçler, İşleçler. Aritmetik İşleçler - 1. Aritmetik İşleçler - 2. Geçen ders: Bu ders: BS-515 Nesneye Yönelik Programlama

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu.

BİL-142 Bilgisayar Programlama II

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Bölüm 3 Yapısal Programlama

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

Programlama Dili Prensipleri. Lab Notları 4

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Java da İşleçler, Ders #3 (4 Kasım 2009)

PROGRAMLAMA DİLLERİ I

Koşullu Önermeler (if else)

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

HSancak Nesne Tabanlı Programlama I Ders Notları

B02.6 Karar Verme, Eşitlik ve Bağıntı Operatörleri

Döngüler - Loops 4/9/2010. ENF-102 Jeoloji Giriş. Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler.

BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1

ESM-361 Mikroişlemciler. 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 8

Temel Bilgisayar Bilimleri Ders Notu #4-1. kısım

C#(Sharp) Programlama Dili

M.ilkucar MAKU MYO 1

Kocaeli Üniversitesi C Bilgisayar Programlama Ara Sınavı Test Soruları

Nesne Tabanlı Programlama

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

Nesne Yönelimli Programlama

Java da Program Denetimi ve Operatörler. Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 2 1

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

MAT213 Bilgisayar Programlama I

Döngüler - Loops 4/13/2011. ENF-102 Jeoloji Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler.

Hafta 9 C Dilinde Kontrol ve Döngü Yapıları

JAVA DÖNGÜ DEYİMLERİ. For Döngüsü

Bölüm 2 - C ile Programlamaya Giriş

HSancak Nesne Tabanlı Programlama I Ders Notları

HSancak Nesne Tabanlı Programlama I Ders Notları

BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI

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

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

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

Programlamaya Giriş Karar Yapıları, Tekrarlı İfadeler(Döngüler)

Nesne Tabanlı Programlama

C++ Statements. { ve } arasında ifade edilen bir dizi statement bir compound statement (birleşik ifade) oluşturur.

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

BİLGİSAYAR MÜHENDİSLİĞİ ALGORİTMA VE PROGRAMLAMA II 2.HAFTA SWİTCH (CASE), SAYAÇLAR, DÖNGÜLER,

MATLAB de. Programlama. Kontrol Yapıları. Döngü Yapıları. Doç. Dr. İrfan KAYMAZ Matlab Ders Notları

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

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

Öğr. Gör. Musa AYDIN Fatih Sultan Mehmet Vakıf Üniversitesi

Python Programlama Dili

Genel Programlama II

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

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

Nesne Tabanlı Programlama

Karar yapıları, (if else, switch)

DATA STRUCTURES. Part I C# Programlama Dili Temelleri

BLM 111 ALGORİTMA VE PROGRAMLAMA I

Microsoft Visual Studio. internetten temin edilebilir. yazılımının başlatılması

/ C Bilgisayar Programlama Final Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

C Programlama Dilininin Basit Yapıları

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

3.Hafta. . Kontrol Deyimleri/İfadeler

Program Akışının Denetimi

GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-2 Değişken Kavramı ve Temel Operatörler

Döngü (Loop) Deyimleri / Veri Belirleyicileri / Matematiksel Fonksiyonlar

Döngüler. 1.1 while döngüsü

Ders - 7 while döngüsü

ÜNİTE. NESNE TABANLI PROGRAMLAMA I Okt. Mustafa AKBUĞA İÇİNDEKİLER HEDEFLER KARAR KONTROL DEYİMLERİ

Belirli bir iş bir çok kez tekrarlanacaksa, programda bu iş bir kez yazılır ve döngü deyimleriyle istenildiği kadar tekrar tekrar çalıştırılabilir.

WEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu

Java dili, aşağıdakiler de dahil olmak üzere çok çeşitli denetleyici türlerine sahiptir.

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

Nesne Yönelimli Programlama

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

Transkript:

BBS515 Nesneye Yönelik Programlama Ders 3 Zümra Kavafoğlu https://zumrakavafoglu.github.io/

Bağıntısal Operatörler operatör tanımı < küçüktür > büyüktür <= küçük eşittir >= büyük eşittir eşittir!= eşit değildir

Bağıntısal Operatörler Bağıntısal ifadelerin değeri boolean tipinde yani true ya da false dur. 3 < 4? 2 > 3? 4 == 4? double ve float için == işleci her zaman beklenen sonucu vermeyebilir

Bağıntısal Operatörler Bağıntısal ifadelerin değeri boolean tipinde yani true ya da false dur. 3 < 4 true 2 > 3? 4 == 4? double ve float için == işleci her zaman beklenen sonucu vermeyebilir

Bağıntısal Operatörler Bağıntısal ifadelerin değeri boolean tipinde yani true ya da false dur. 3 < 4 true 2 > 3 false 4 == 4? double ve float için == işleci her zaman beklenen sonucu vermeyebilir

Bağıntısal Operatörler Bağıntısal ifadelerin değeri boolean tipinde yani true ya da false dur. 3 < 4 true 2 > 3 false 4 == 4 true double ve float için == işleci her zaman beklenen sonucu vermeyebilir

Bağıntısal Operatörler : karakter karşılaştırması char tipinde değişkenler de bağıntısal operatörlerle karşılaştırılabilirler. Bunun için bu değişkenlerin decimal kodları baz alınır. A < C? a < A? @ == @?

Karakterlerin decimal kodları

Bağıntısal Operatörler : karakter karşılaştırması char tipinde değişkenler de bağıntısal operatörlerle karşılaştırılabilirler. Bunun için bu değişkenlerin decimal kodları baz alınır. A < C true a < A? @ == @?

Bağıntısal Operatörler : karakter karşılaştırması char tipinde değişkenler de bağıntısal operatörlerle karşılaştırılabilirler. Bunun için bu değişkenlerin decimal kodları baz alınır. A < C true a < A false @ == @?

Bağıntısal Operatörler : karakter karşılaştırması char tipinde değişkenler de bağıntısal operatörlerle karşılaştırılabilirler. Bunun için bu değişkenlerin decimal kodları baz alınır. A < C true a < A false @ == @ true

Mantıksal Operatörler operatör && & tanımı ve ve veya veya! değil ^ exclusive veya

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE FALSE TRUE TRUE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE FALSE TRUE TRUE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE TRUE FALSE TRUE FALSE FALSE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE TRUE FALSE TRUE TRUE FALSE FALSE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE TRUE FALSE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE TRUE FALSE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE FALSE TRUE FALSE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE FALSE TRUE FALSE TRUE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE FALSE TRUE FALSE TRUE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE Exclusive veya ^ ifade1 ^ ifade2 ifade1 ve ifade2 aynı değere sahipse false ifade1 ve ifade2 farklı değerlere sahipse true

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE FALSE TRUE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE Exclusive veya ^ ifade1 ^ ifade2 ifade1 ve ifade2 aynı değere sahipse false ifade1 ve ifade2 farklı değerlere sahipse true

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE Exclusive veya ^ ifade1 ^ ifade2 ifade1 ve ifade2 aynı değere sahipse false ifade1 ve ifade2 farklı değerlere sahipse true

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE Exclusive veya ^ ifade1 ^ ifade2 ifade1 ve ifade2 aynı değere sahipse false ifade1 ve ifade2 farklı değerlere sahipse true

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE FALSE Exclusive veya ^ ifade1 ^ ifade2 ifade1 ve ifade2 aynı değere sahipse false ifade1 ve ifade2 farklı değerlere sahipse true

Mantıksal Operatörler için Doğruluk Tablosu p q p&&q (p&q) p q (p q)!p p^q TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE FALSE TRUE TRUE TRUE TRUE FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE FALSE

Mantıksal Operatörler Aşağıdaki mantıksal ifadelerin sonuçlarını bulunuz (3 < 4) && (2 == 2)? (4 == 8) & (6 < 8)? (3 < 4) (4== 2)? (1 < 2) ^ (4!= 4)?!(3 < 4) (2!= 2)?

Mantıksal Operatörler Aşağıdaki mantıksal ifadelerin sonuçlarını bulunuz (3 < 4) && (2 == 2) true ve true true (4 == 8) & (6 < 8) false ve true false (3 < 4) (4== 2) true veya false true (1 < 2) ^ (4!= 4) true ^ false true!(3 < 4) (2!= 2) false veya false false

Mantıksal Operatörler: && ile & arasındaki fark && kullanıldığında, ilk ifade false ise ikinci ifadenin değeri hiç hesaplanmadan sonuç false olarak bulunur. & kullanılırsa, ilk ifade false olsa bile iki ifadenin de değeri hesaplanır. (4 < 3) && (2 == 2) (4 < 3) & (2 == 2)

Mantıksal Operatörler: && ile & arasındaki fark && kullanıldığında, ilk ifade false ise ikinci ifadenin değeri hiç hesaplanmadan sonuç false olarak bulunur. & kullanılırsa, ilk ifade false olsa bile iki ifadenin de değeri hesaplanır. (4 < 3) && (2 == 2) (4 < 3) & (2 == 2) false ilk ifadenin değerini hesapla

Mantıksal Operatörler: && ile & arasındaki fark && kullanıldığında, ilk ifade false ise ikinci ifadenin değeri hiç hesaplanmadan sonuç false olarak bulunur. & kullanılırsa, ilk ifade false olsa bile iki ifadenin de değeri hesaplanır. (4 < 3) && (2 == 2) (4 < 3) & (2 == 2) ilk ifadenin değerini hesapla false sonuç: false

Mantıksal Operatörler: && ile & arasındaki fark && kullanıldığında, ilk ifade false ise ikinci ifadenin değeri hiç hesaplanmadan sonuç false olarak bulunur. & kullanılırsa, ilk ifade false olsa bile iki ifadenin de değeri hesaplanır. (4 < 3) && (2 == 2) false ilk ifadenin değerini hesapla sonuç: false false (4 < 3) & (2 == 2) ilk ifadenin değerini hesapla

Mantıksal Operatörler: && ile & arasındaki fark && kullanıldığında, ilk ifade false ise ikinci ifadenin değeri hiç hesaplanmadan sonuç false olarak bulunur. & kullanılırsa, ilk ifade false olsa bile iki ifadenin de değeri hesaplanır. (4 < 3) && (2 == 2) false ilk ifadenin değerini hesapla sonuç: false false (4 < 3) & (2 == 2) ilk ifadenin değerini hesapla true 2. ifadenin değerini hesapla

Mantıksal Operatörler: && ile & arasındaki fark && kullanıldığında, ilk ifade false ise ikinci ifadenin değeri hiç hesaplanmadan sonuç false olarak bulunur. & kullanılırsa, ilk ifade false olsa bile iki ifadenin de değeri hesaplanır. (4 < 3) && (2 == 2) false ilk ifadenin değerini hesapla sonuç: false false (4 < 3) & (2 == 2) ilk ifadenin değerini hesapla true 2. ifadenin değerini hesapla false & true

Mantıksal Operatörler: && ile & arasındaki fark && kullanıldığında, ilk ifade false ise ikinci ifadenin değeri hiç hesaplanmadan sonuç false olarak bulunur. & kullanılırsa, ilk ifade false olsa bile iki ifadenin de değeri hesaplanır. (4 < 3) && (2 == 2) false ilk ifadenin değerini hesapla sonuç: false false (4 < 3) & (2 == 2) ilk ifadenin değerini hesapla true 2. ifadenin değerini hesapla false & true sonuç: false

Operatör öncelik tablosu

if koşul ifadesi if(koşul) { } koşul doğruysa çalıştırılacak ifade; Burada koşul boolean değerli yani değeri true veya false olan bir ifade olmalıdır.

if koşul ifadesi Boolean Expression (Condition) false true Statement(s)

if koşul ifadesi : Örnek Program Problem: Kullanıcıdan öğrencinin notunu isteyen ve geçme notunu geçtiyse sınavdan geçtiğini ekrana yazdıran bir program yazınız.

if koşul ifadesi : Örnek Program

if koşul ifadesi : Örnek Program grade değeri, passinggrade den büyükse konsola Student passed the exam yazdır.

if koşul ifadesi : Yazım kuralları boolean değerli ifade boolean değerli ifade her zaman parantezlerin arasına yazılmalı

if koşul ifadesi : Parantezler if bloğunun içindeki ifade tek satırdan oluşuyorsa süslü parantezler yazılmayabilir.

if koşul ifadesi : Parantezler if bloğunun birden fazla satırdan oluşuyorsa blok süslü parantezle açılıp kapatılmalıdır.

if koşul ifadesi: Parantezler grade >= passinggrade false true

if koşul ifadesi: Parantezler grade >= passinggrade false true

if koşul ifadesi: Parantezler

if- else koşul ifadesi if(koşul) { koşulun değeri true ise çalıştırılacak ifade; } else{ koşulun değeri false ise çalıştırılacak ifade; } Burada koşul boolean değerli yani değeri true veya false olan bir ifade olmalıdır. else bloğu için süslü parantezlerin kullanımı if bloğunda olduğu gibidir.

if- else koşul ifadesi true Boolean Expression (Condition) false Statement(s) for the true case Statement(s) for the false case

if- else koşul ifadesi

if- else koşul ifadesi grade değeri, passinggrade den büyükse Student passed the exam yazdır, değilse; Student failed the exam yazdır.

if- else koşul ifadesi: koşul değerinin if bloğunun içinde değişmesi Yukarıdaki kod parçasının çıktısı nedir? a)in if b)in else c)in if In else

if- else koşul ifadesi: koşul değerinin if bloğunun içinde değişmesi Koşulun if bloğunun içinde false olması, else bloğuna girileceği anlamına gelmez. if bloğuna bir kere girildikten sonra bir daha else bloğuna kesinlikle girilmez. Yukarıdaki kod parçasının çıktısı nedir? a)in if b)in else c)in if In else

İç içe if-else yapıları else-if yapısı çok esnek bir kullanım şekline sahiptir. Çünkü istediğimiz sayıda else-if yapısını birbirinin içine yerleştirebiliriz. Bu şekilde kullanılan else-if yapılarına içiçe else-if yapıları denir.

İç içe if-else yapıları n1 = 5, n2 = 3, n3 = 7 için largestnumber değeri ne olur? true: if bloğunun içine gir (bu else bloğunun içine hiç girmeyeceğiz demek)

İç içe if-else yapıları n1 = 5, n2 = 3, n3 = 7 için largestnumber değeri ne olur? false: else varsa else bloğunun içine gir

İç içe if-else yapıları n1 = 5, n2 = 3, n3 = 7 için largestnumber değeri ne olur? false: else varsa else bloğunun içine gir largestnumber değeri 7 olur

İç içe if-else yapıları n1 = 7, n2 = 3, n3 = 5 için largestnumber değeri ne olur? n1 = 1, n2 = 3, n3 = 2 için largestnumber değeri ne olur? n1 = -2, n2 = 3, n3 = 7 için largestnumber değeri ne olur?

İç içe if-else yapıları İçiçe else-if yapıları çok kullanışlı olmasına rağmen bir çok hataya da neden olabilir. Bunlardan en önemlisi else komutunun yanlış if komutuyla eşleştirilmesidir.

İç içe if yapıları Bu soruna bir örnek verelim: x ve y isimli iki değişken verilsin ve eğer değişkenlerin ikisi de pozitifse konsola x ve y pozitiftir eğer x negatifse konsola x negatiftir yazılsın Doğru ifade Yanlış ifade

İç içe if yapıları true x>0 false y>0 false true

İç içe if yapıları true x>0 false true y>0 false

else if komutu

else if komutu

else if komutu

İç içe if yapıları İçiçe if/else yapılarında karşılaşılan bir başka hata ise programcının test edilecek koşulların sırasını iyi ayarlayamamasıyla ortaya çıkar. Örneğin Celcius cinsinden girilen sıcaklık değerine göre ekranda bir mesaj yazdırmak istiyoruz. temp > 15 ise ılık temp > 25 ise sıcak

İç içe if yapıları Mantık hatası: 15 den büyük her derece için (dolayısıyla 25 den de büyük) It s warm mesajını yazdıracak.

İç içe if yapıları Doğru sıralamayla yazıldığında mantık hatası ortadan kalkar.

Koşullu operatör (Conditional Operator) Koşullu operatör (?:) esas olarak sıkıştırılmış bir if/else yapısıdır. Koşullu operatör üçlü bir operatördür, yani koşullu bir ifade yaratmak için üç tane argüman alır.

Koşullu operatör (Conditional Operator)

Koşullu operatör (Conditional Operator)

switch-case Kullanıcıdan haftanın kaçıncı gününde olduğumuzu girmesin isteyen ve o günün adını yazan bir program yazınız.

switch-case Kullanıcıdan haftanın kaçıncı gününde olduğumuzu girmesini isteyen ve o günün adını yazan bir program yazınız. Kontrol etmemiz gereken 8 farklı koşul olduğundan kontrolü uzun bir içiçe if yapısıyla yapmamız gerekiyor.

switch-case Kullanıcıdan haftanın kaçıncı gününde olduğumuzu girmesini isteyen ve o günün adını yazan bir program yazınız. Java birden fazla koşulu etkili biçimde ifade edebildiğimiz kontrol yapıları oluşturabilmemiz için switch-case ifadesini sağlar.

switch-case switch(switch değişkeni){ case değer1: ifade(ler)1; break; case değer2: ifade(ler)2; break;... case değern: ifade(ler)n; break; default: default durum için ifade(ler); }

switch-case switch değişkeni değer1 ifade1 değer2 ifade2 default ifade

switch-case daynumber is 1 dayname = Monday break daynumber is 2 dayname = Tuesday break daynumber is 3 dayname = Wednesday break daynumber is 4 daynumber is 5 dayname = Thursday dayname = Friday break break daynumber is 6 dayname = Saturday break daynumber is 7 dayname = Sunday break default System.out.println( You entered wrong number ) break

switch-case switch değişkeni char, byte, short, int ya da String tipinde olmalı ve her zaman parantez içinde olmalı değer1... değern switch değişkeni ile aynı tipte olmalıdır. break ifadesi bütün switch bloğunu sonlandırır. Eğer kullanılmazsa durumun ne olduğuna bakılmaksızın sonraki ifadeler çalıştırılır. default durumu belirlenen durumlardan hiçbirinin doğru olmadığı durumlar için kullanılır. default her zaman switch bloğunun en sonunda yer alır.

switch-case: break Bir durumun sonunda break ifadesi kullanılmazsa yazım hatası oluşmaz ama önemli bir mantık hatası oluşabilir. doğru sonuç

switch komutu: break Bir durumun sonunda break ifadesi kullanılmazsa synthax hatası oluşmaz ama önemli bir mantık hatası oluşabilir. İfadeden sonra break yok hatalı sonuç

Döngüler 1 den 10 a kadar tamsayıları ekrana yazdıran bir Java programı yazınız.

Döngüler 1 den 10 a kadar tamsayıları ekrana yazdıran bir Java programı yazınız. Tekrar eden kod bloğu Bu kod daha kısa biçimde yazılamaz mıydı?

Döngüler Javada tekrar eden kod bloklarının tek bir yapı içinde yazılması için döngüler kullanılır. Java da üç tip döngü vardır: while, do-while ve for döngüsü.

while döngüsü while(koşul){ } döngü ifadeleri Koşul boolean değerli olmalıdır. Koşulun değeri true olduğu sürece döngü ifadeleri tekrar tekrar çalıştırılır. Sonsuz döngüyü engellemek için koşulun eninde sonunda false olacağından emin olun.

while döngüsü

while döngüsü

do-while döngüsü do{ döngü ifadeleri }while(koşul) while döngüsünden farkı: while döngüsünde önce koşulun değerine bakılır, true ise döngü ifadeleri çalıştırılır. do-while döngüsünde önce döngü ifadeleri çalıştırılır, sonra koşulun değerine bakılır, true ise bir sonraki döngü ifadesi çalıştırılır. Yani do-while döngüsünde döngü ifadeleri en az bir kez çalıştırılır.

do-while döngüsü

do-while döngüsü Kullanıcıdan negatif bir tamsayı girene kadar sürekli tamsayı girmesini istediğimiz bir programı hem while hem de do-while döngüsü kullanarak yazalım: while döngüsü ile: ilk sayıyı döngünün dışında alıyoruz

do-while döngüsü Kullanıcıdan negatif bir tamsayı girene kadar sürekli tamsayı girmesini istediğimiz bir programı hem while hem de do-while döngüsü kullanarak yazalım: do-while döngüsü ile: Döngünün içindeki ifade ilk sefer mutlaka çalıştırılacağı için döngünün dışında bu ifadeleri tekrar yazmaya ihtiyaç yok.

for döngüsü for(initialization; termination; adjustment){ } döngü ifadeleri initialization(ilk değer verme): kontrol değişkenine ilk değer verilir. Sadece bir defa döngünün başlangıcında çalıştırılır. termination(sonlandırma): değeri false olduğunda döngü sonlanır. adjustment(ayarlama): kontrol değişkeninin değerini değiştirir.

for döngüsü Konsola alt alta yüz defa Welcome to Java yazdırmak için: kontrol değişkeni

for döngüsü Konsola alt alta yüz defa Welcome to Java yazdırmak için: i kontrol değişkenine 0 ilk değeri verilir.

for döngüsü Konsola alt alta yüz defa Welcome to Java yazdırmak için: (i<100) ifadesi false olduğunda yani (i>=100) olduğunda döngü sonlanır

for döngüsü Konsola alt alta yüz defa Welcome to Java yazdırmak için: i değeri döngünün her adımında 1 arttırılır

for döngüsü

for, while, do-while Konsola alt alta yüz defa Welcome to Java yazdırmak için:

break ve continue break: Bu komut onu kapsayan en içteki döngüyü hemen sonlandırır. continue: Bu komut onu kapsayan en içteki döngünün o adımını hemen sonlandırır, döngü bir sonraki adımdan devam eder.

break sum 6 dan büyük eşit olduğunda döngüden çık.

break komutu olmadan aynı döngü

continue i 2 ye eşit olduğunda gövdedeki takip eden komutlar(bu örnekte print) atlanır ve hemen döngüdeki bir sonraki adıma geçilir

continue olmadan aynı döngü

İç içe döngüler Verilen poziitif yükseklik değerine göre yıldızlardan oluşan bir dik üçgen çizdiren bir Java programı yazınız. Örneğin yükseklik değeri 5 verildiyse çıktı aşağıdaki gibi olmalıdır

İç içe döngüler Verilen poziitif yükseklik değerine göre yıldızlardan oluşan bir dik üçgen çizdiren bir Java programı yazınız. Örneğin yükseklik değeri 5 verildiyse çıktı aşağıdaki gibi olmalıdır

İç içe döngülerde break komutu ait olduğu en içteki döngüden çıkış sağlar

Çalışma zamanı hatası(run-time error) Derleyicinin algılayamadığı ama programın çalışması sırasında ortaya çıkan hatalardır. Bazı örnekler: InputMismatchException: Scanner ile kullanıcıdan istenen verinin tipinde uyumsuzluk olduğunda ortaya çıkar.

Çalışma zamanı hatası(run-time error) ArithmeticException: Bir sayının 0 ile bölümünde ortaya çıkar.

Mantık hatası Mantık hataları programa yaptırmak istediğiniz bir görevin yanlış yapılması sonucu ortaya çıkar. Derleme zamanında veya çalışma zamanında herhangi bir hata verilmemesine rağmen programın çıktısı istediğiniz çıktı değildir. Bu istemsiz durumun kodun hangi bölümünden kaynaklandığını, yani mantık hatasının yerini bulmak özellikle geniş kapsamlı programlarda çok zor olabilir. Belli başlı mantık hatalarına örnekler: - Operatör önceliklerinde hata 5+4*3 ile (5+4)*3 farklı sonuçlar verir - Bir koşulun yanlış olduğu halde doğru olduğunu varsaymak - Kayar noktalı sayılarla(floating point numbers, double / float) eşitlik kontrolü yapmak - İki tamsayı tipinde değişkenin bölümünün ondalık sayı çıkacağını varsaymak - Noktalı virgülü yanlış yere koymak

float ve double tipinde değişkenlerin eşitliğinin karşılaştırılması floating-point değerleriyle aritmetik işlemler yapılırken bazı küçük yuvarlamalar sonucu teorik olarak eşit olan iki floating-point değişkeni çok küçük bir değer farkı nedeniyle eşit değilmiş gibi anlaşılabilir. Bu yanlış anlaşılma sonucu doğru olması gereken bir koşul yanlış olarak alınır ve programda ayıklanması çok güç mantık hataları oluşur. Dolayısıyla floating-point tipi değişkenlerle program yazarken eşitlik yerine yaklaşık eşitliği kontrol etmek daha iyi bir fikirdir. Örneğin double tipinde bir değişken olan x in 10.0 a eşit olup olmadığına bakmaktansa, x-10.0 <= 1E-10 eşitsizliğine bakmak daha mantıklıdır.

float ve double tipinde değişkenlerin eşitliğinin karşılaştırılması

float ve double tipinde değişkenlerin eşitliğinin karşılaştırılması

Mantık hatası Noktalı virgülü yanlış yere koymak x, 0 dan küçükse boş satır çalıştır.

Math sınıfı metodları

Math sınıfı metodları Math.abs(-3) 3 Math.sqrt(16) 4 Math.min(2,7) 2