MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 1: Karar

advertisement
MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ
Ders 1: Karar Yapıları
Yard. Doç. Dr. Alper Kürşat Uysal
Bilgisayar Mühendisliği Bölümü
akuysal@anadolu.edu.tr
Ders Web Sayfası: http://ceng.anadolu.edu.tr/Ders.aspx?dersId=107
1
If Kontrol Yapısı
•
•
•
•
Bilgisayar dillerinde değişkenlerden ve işlemlerden sonraki en temel yapı karar yapılarıdır. Şimdi bu komut yapılarına tek tek göz atalım. İlk yapımız if ‐ elseif ‐ else mantıksal karşılaştırma yapısı’dır.
Bu yapı programda karar mekanizmalarını oluşturmak için kullanılır. Temel yapısı :
if ( boolean değişken yada sabit)
{ boolean degişken veya sabitin değeri true olduğunda yapılan işlemler} else if( boolean değişken yada sabit)
{ boolean degişken veya sabitin değeri true olduğunda yapılan işlemler}
else
{ yukarıdaki boolean değişken vede sabitlerin hiçbiri true değerine eşit değilse yapılacak
olan işlemler}
2
Akış Şeması
• If kontrol yapıları aşağıdaki akış şemasındaki gibi düşünülebilir.
if (havasoguksa)
paltoGiy ();
Dışarıda hava
Soğuk mu?
Evet
Palto giy.
Hayır
Akış Şeması
• Bir kod bloğu aşağıdaki gibi ifade edilebilir:
if (havaSogukmu){
paltoGiy ();
sapkaTak ();
eldivenGiy ();
}
Parantezler birden fazla kod
bloğunu bir arada kullanmak
İçin bulunmaktadır.
Dışarıda hava
Soğuk mu?
Evet
Palto giy.
Şapka tak.
Eldiven giy.
if‐else Yapısı
Hayır
Tshirt giy.
Dışarıda hava
soğuk mu?
Evet
Palto giy.
If karar yapısı örneği-1
import javax.swing.*;
public class ifornek1 {
public static void main(String args[]){
String s1=JOptionPane.showInputDialog("Ogrencinin notunu giriniz (0‐100) : "); int not=Integer.parseInt(s1);
String s;
if( not >= 90){ s="A";}
else if(not >=75) { s="B";} else if(not >=60) { s="C";} else if(not >=50) { s="D";} else if(not >=40) { s="E";}
else{ s="F";}
s=" Öğrencinin notu = "+s;
JOptionPane.showMessageDialog(null,s);
}
}
6
If karar yapısı örneği-2
import javax.swing.*;
public class ifornek2 {
public static void main (String args[]){
double x=1.245; double y=3.235; String s1=""; if(x<y)
{ s1=x+" değeri "+y+" değerinden küçüktür";} else if(x>y)
{ s1=x+" değeri "+y+" değerinden büyüktür";} else if(x==y)
{ s1=x+" değeri "+y+" değerine eşittir";}
JOptionPane.showMessageDialog(null,s1); }
}
7
İçiçe if Yapıları Akış Şeması
Hayır
Evet
Dışarıda hava
soğuk mu?
Tshirt giy
Hayır
Ceket giy.
Kar
yağıyor mu?
Evet
Palto giy
İçiçe if yapıları
Bu if ve else
bir arada çalışıyor.
3-9
Bu if ve else bir
arada
çalışıyor.
if (havasoguksa)
{
if (karyagiyorsa)
{
paltoGiy();
}
else
{
ceketGiy();
}
}
else
{
tshirtgiy ();
}
If karar yapısı örneği-3
import javax.swing.*;
public class ifornek3 {
public static void main (String args[]) {
String s1=""; double x = 7.0; double y = 3.0; if(x > 5)
{ if(y > 5){ s1="x ve y besten buyuktur.";}
else if(y==5) { s1="x besten buyuktur ve y bese esittir.";}
else{ s1="x besten buyuktur ve y besten kucuktur.";}
}
else
{ if(y > 5) { s1="x besten kucuktur veya esittir ve y 5 den buyuktur.";}
else if(y==5) { s1="x besten kucuktur veya esittir ve y bese esittir.";}
else{ s1="x besten kucuktur veya esıttır ve y besten kucuktur.";}
}
JOptionPane.showMessageDialog(null,s1);
}
}
10
Mantıksal Operatorler
Operasyon
Anlamı
İşlevi
&&
AND
İki mantıksal ifadeyi birleştirir. Sonucun true olması için
iki ifadenin de true olması gerekir.
||
OR
İki mantıksal ifadeyi birleştirir. Sonucun true olması için
en az bir ifadenin true olması gerekir.
NOT
Mantıksal ifadeyi tersine çevirir. False olan bir duruma
uygulanırsa true, true olan bir duruma uygulanırsa false
döndürür.
!
3-11
If karar yapısı örneği-4
import javax.swing.*;
public class ifornek4 {
public static void main (String args[]) {
String s1=""; double x = 7.0; double y = 3.0;
if(x>5 && y>5){ s1="x ve y beşten büyüktür.";}
else if(x>5 && y==5){ s1="x beşten büyüktür ve y ve beşe eşittir.";}
else if(x>5 && y<5){ s1="x beşten büyüktür ve y beşten küçüktür.";}
else if(x<5 && y>5){ s1="x beşten küçüktür ve y 5 ten büyüktür.";}
else if(x < 5 && y==5) { s1="x beşten küçüktür ve y beşe eşittir";}
JOptionPane.showMessageDialog(null,s1);
}
}
12
KAYNAKÇA
1. Turhan Çoban, Java Bilgisayar Diliyle Programlama.
2. Starting Out with Java 5th Edition (Tony Gaddis): From Control Structures through Objects
13
Download