Java’da If-Else Blokları
If – Else Blokları

Bu yazıda sizlere JAVA’da koşul bloklarını kullanabilmemizi sağlayan ifelse ve switchcase bloklarından bahsedeceğim. ifelse blokları diğer programlama dillerinde olduğu gibi JAVA’da da sık sık kullanılan ve önemli bir yere sahip ifadelerdir. ifelse blokları sayesinde yazdığımız kodlar içerisine koşullara bağlı farklı çıktı veren ya da farklı işlemler gerçekleştiren kod blokları ekleyebiliriz.

ifelse blokları, programcı tarafından mantıksal bir boolean koşulunun doğru ya da yanlış olmasına göre belirtilen eylemleri gerçekleştirmeye yarayan özelliktir. ifelse bloklarının JAVA’daki kullanımları aşağıdaki gibidir:

if (kosul1) {

  //kosul1 koşulunun true olması durumunda çalıştırılacak kod bloku

}else if (kosul2) {

  //kosul1 koşulunun false ve kosul2 kosulunun true olması durumunda çalıştırılacak kodu bloku

}else{

  //kosul1 koşulunun false ve kosul2 kosulunun false olması durumunda çalıştırılacak kodu bloku

}

Eğer ki yazdığımız kodun tek bir koşul altında farklı bir aksiyon göstermesini istiyorsak sadece if bloğunu da kullanabiliriz. Örneğin, verdiğimiz bir sayı karşılığında programın o sayının çift olduğu durumlarda dışarıya “Bu bir çift sayıdır.” yazmasını isteyelim. Diğer durumlarda programın herhangi bir aksiyon göstermemesini isteyelim. Bu durumda aşağıdaki gibi bir kod bloğu isteğimizi gerçekleştirebilir.

INPUT:

public class Main {
    public static void main(String[] args) {
        int A = 4;

        if (A % 2 == 0){
            System.out.println("Girdiğiniz sayı çift sayıdır");
        }

        }
}

OUTPUT:

Girdiğiniz sayı çift sayıdır.

Aynı zamanda aynı if bloğu içerisinde birden fazla koşula bağlı kodlar da yazabiliriz. Bunun için else if bloğunu devreye sokabiliriz. Yukarıdaki örneği çift sayıların dışında tek sayılar girildiğinde de “Bu bir tek sayıdır.” cümlesini ekrana gösterecek şekilde güncelleyelim. Böylece bu örnek için 3 koşul yazmamız gerekecektir. Bunlardan ilki verilen sayının çift olduğu durumdur, ikincisi, sayının tek olduğu durumdur ve sonuncusu ise verilen sayının bu iki koşulu da sağlamayan bir sayı olması durumudur. Örneğin verdiğimiz sayı bir ondalıklı sayı olabilir. Bu durumda bu sayı için 3. koşul devreye girer. Örneği aşağıdaki kod bloğu ile inceleyelim.

INPUT: 

public class Main {
    public static void main(String[] args) {
        double A = -5.2;

        if (A % 2 == 0){
            System.out.println("Girdiğiniz sayı çift sayıdır.");
        } else if (A % 2 == 1 || A % 2 == -1) {
            System.out.println("Girdiğiniz sayı tek sayıdır.");
        }else{
            System.out.println("Girdiğiniz sayı tam sayı değildir!");
        }

    }
}

OUTPUT:

Girdiğiniz sayı tam sayı değildir!

else ifadesi, yazdığımız if ve else if bloklarının hepsinin False olduğu durumda devreye girer ve hiçbir koşulun sağlanmadığı durumlarda alması istenilen aksiyonları gerçekleştirir.

ifelse bloklarında eğer ki ilk if koşulu sağlanırsa, koşul sağlandığında gerçekleştirilecek işlemler gerçekleştirilir ve ifelse bloğundan çıkılır.  if koşulu sağlanmazsa, if bloğundan sonra varsa else if bloğu true ise çalıştırılır ancak false ise ve başka else if bloğu varsa o çalıştırılır. Hiçbir else if bloğu true olmazsa ve else bloğu varsa else bloğu çalıştırılarak program sonlandırılır. Yani ifelse blokları yukarıdan aşağı olacak şekilde ifelse if – else yolu izlenerek çalıştırılır.

if bloğunu çalıştırırken dikkat etmemiz gereken noktalardan biri de if’in yazılış şeklidir. Eğer ki “İf” ya da “İF” şeklinde yazacak olursak if bloğu çalışmaz ve çıktı olarak bize hata döndürür. Kod bloğunda “if” şeklinde yazılmalıdır.

INPUT:

public class Main {
    public static void main(String[] args) {
        int A = 3;
        int B = 5;
        int C = 7;

        if (A > B && A > C && B > C){
            System.out.println("En büyük değer : " + A + " Ortanca değer : " + B + " En küçük değer : " + C);
        } else if (A > B && A > C && C > B) {
            System.out.println("En büyük değer : " + A + " Ortanca değer : " + C + " En küçük değer : " + B);
        } else if (B > A && B > C && C > A) {
            System.out.println("En büyük değer : " + B + " Ortanca değer : " + C + " En küçük değer : " + A);
        } else if (B > A && B > C && A > C) {
            System.out.println("En büyük değer : " + B + " Ortanca değer : " + A + " En küçük değer : " + C);
        } else if (C > B && C > A && A > B) {
            System.out.println("En büyük değer : " + C + " Ortanca değer : " + A + " En küçük değer : " + B);
        }else{
            System.out.println("En büyük değer : " + C + " Ortanca değer : " + B + " En küçük değer : " + A);
        }

    }
}

OUTPUT:

En büyük değer : 7 Ortanca değer : 5 En küçük değer : 3

ifelse bloklarının dışında koşul blokları oluşturmak için switchcase bloklarını da kullanabiliriz.

Switch-Case Blokları

Eğer birden fazla koşul içeren kod blokları yazmak istersek ifelse blokları dışında switchcase kod bloklarını da kullanabiliriz. Bu kod bloklarının çalışma mantığı ifelse’e benzer olup sonucu true olan koşulun bloğu çalıştırıldıktan sonra blok sonlandırılır. Switchcase kullanımı aşağıdaki gibidir:

INPUT:

switch(expression) {

case x:

  //Koşul sağlandığında çalıştırılacak kod bloğu

case y:

  //Koşul sağlandığında çalıştırılacak kod bloğu

}

Switchcase kullanımı daha kolay anlayabilmek için aşağıdaki örneği inceleyebiliriz.

INPUT:

public class Main {
    public static void main(String[] args) {
        int gun = 4;
        switch(gun) {

            case 1:

                System.out.println("Pazartesi");
                break;

            case 2:

                System.out.println("Salı");
                break;

            case 3:

                System.out.println("Çarşamba");
                break;

            case 4:

                System.out.println("Perşembe");
                break;

            case 5:

                System.out.println("Cuma");
                break;

            case 6:

                System.out.println("Cumartesi");
                break;

            case 7:

                System.out.println("Pazar");
                break;
        }

    }
}

OUTPUT:

Perşembe

Birden çok koşulun dahil olduğu switchcase bloklarında bir koşul sağlandıktan ve sağlanan koşulun kod bloğu çalıştırıldıktan sonra, kod bloğundan çıkılmasını istersek break komutunu kullanabiliriz. Bu ifade ile birlikte blok içerisinde daha fazla kod çalıştırılmasının önüne geçebiliriz. Break komutunun kullanımına dair yukarıdaki örneği inceleyebiliriz.

Break komutunu bize kod bloğunun çalıştırılma süresinden kazanç sağlayabilir. Bunun sebebi sadece sonucu true olan koşulun kodunun çalıştırılmasından ve diğer blokların atlanmasından dolayıdır.

Break komutunun dışında switchcase bloklarında hiçbir koşulun sağlanmadığı durumlar için default anahtar kelimesini kullanabiliriz. Bu anahtar kelime, hiçbir koşul sağlanmadığında varsayılan olarak çalıştırılması istenen kod satırlarını içerebilir. default komutu switchcase bloklarının en sonunda kullanılırsa break komutu ile beraber çalıştırılmasına gerek yoktur. default komutunun kullanımına dair örneği aşağıda inceleyebilirsiniz.

INPUT:

public class Main {
    public static void main(String[] args) {
        String sehir = "Sivas";
        switch(sehir) {

            case "İstanbul":

                System.out.println("Marmara Bölgesi");
                break;

            case "İzmir":

                System.out.println("Ege Bölgesi");
                break;

            case "Antalya":

                System.out.println("Akdeniz Bölgesi");
                break;

            case "Samsun":

                System.out.println("Karadeniz Bölgesi");
                break;

            default:

                System.out.println("Girmiş olduğunuz şehir başka bir bölgeye aittir.");
                break;
        }

    }
}

OUTPUT:

Girmiş olduğunuz şehir başka bir bölgeye aittir.

ifelse ve switchcase dışında kısa koşul ifadeleri ile de koşul blokları oluşturmamız mümkündür. Önceki yazılarımızda da bahsettiğimiz bu yöntemin kullanılışı aşağıdaki gibidir:

degisken = (kosul) ? dogruİfade :  Yanlısİfade;

Yukarıda da görüldüğü gibi bu ifade üç işlenenden oluştuğundan üçlü operatör olarak da isimlendirilebilir.

INPUT:

public class Main {
    public static void main(String[] args) {
     //degisken = (kosul) ? dogruİfade :  Yanlısİfade;

        String kelime1 = "Edirne";
        String kelime2 = "Ankara";

        String degisken = (kelime1.length() == kelime2.length()) ? ("İki kelimenin uzunluğu aynıdır.") : ("İki kelimenin uzunluğu aynı değildir.");
        System.out.println(degisken);

    }
}

OUTPUT:

İki kelimenin uzunluğu aynıdır.

Bu yazımızda sizlere JAVA’da kullanabileceğimiz koşul bloklarından bahsettim. Bir sonraki yazımızda JAVA’dan bahsetmeye devam edeceğiz.

JAVAVBZ0921LHO19WO
Python’da Operatörler, If-Else ve Döngüler

Bu yazıda sizlere karşılaştırma operatörleri, atama operatörleri, mantıksal operatörler ve döngüler gibi konulardan bahsedeceğim.

Karşılaştırma Operatörleri

Karşılaştırma Operatörleri iki değeri karşılaştırmak için kullanılır. Aşağıdaki tabloda karşılaştırma operatörlerini görebilirsiniz.

OperatörlerAdı
==Eşittir
!=Eşit değil
>Büyüktür
<Küçüktür
>=Büyük ya da eşit
<=Küçük ya da eşit

Karşılaştırma işlemleri True ya da False sonuçlarını verir. Yukarıdaki karşılaştırma operatörleri için örnek vermek gerekirse,

INPUT:

4 == 4

OUTPUT:

True

INPUT:

5 == 4

OUTPUT:

False

INPUT:

6 != 1

OUTPUT:

True
INPUT:

4 > 5

OUTPUT:

False

INPUT:

5 >= 2

OUTPUT:

True







-

Atama Operatörleri  

Python’da bir değişkene değer atamak için atama operatörlerini kullanabiliriz. Başlıca atama operatörleri tablodaki gibidir.

OperatörlerÖrnekAçıklama
=x = 8x’e 8’i atar.
+=x += 8x’e 8 ekler.
-=x -= 8x’ten 8 çıkarır.
*=x *= 8x’i 8 ile çarpar.
/=x /= 8x’i 8’e böler.
%=x %= 8x’in 8 ile bölümünden kalanı x’e atar.
//=x //= 8x’in 8’e bölümündeki bölümü, x’e atar.
**=x **= 8x’in 8 üssünü alır ve x’e atar.

Mantıksal Operatörler

OperatörlerAçıklamaKullanımı
andİki ifade doğruysa True döndürür.z>10 and z<20
orİki ifadeden biri doğruysa True döndürür.x>10 or x<11
notMantıksal durumu tersine çevirir. True ise False döndürür.not(x<10 and x<15)

Kimlik Operatörleri

Python’da kimlik operatörleri iki nesnenin bellek konumunu karşılaştırır.

OperatörlerAçıklamaKullanımı
isİki değişken aynı nesneyse True döndürür.x is y
is notİki değişken aynı nesne değilse True döndürür.x is not y

Üyelik Operatörleri

Üyelik operatörleri tuple’lar, string’ler ve listelerde bir nesnenin var olup olmadığını test etmek için kullanılır ve iki tanedir. Bunlar in ve not in’dir. in, belirtilen nesne tuple, string veya listenin içerisindeyse True sonucunu döndürür. not in, ise belirtilen nesnenin tuple, string ve listenin içerisinde değilse True sonucunu döndürür.

INPUT:

List1 = [1,2,3,4,5]

5 in List1

OUTPUT:

True

INPUT:

6 in List1

OUTPUT:

False

INPUT:

6 not in List1

OUTPUT:

True

 

 

 

 

 

 

 

 

 

 

Python’da Döngüler

Python’da çalışırken yineleme içeren işlemler yapabiliriz. Döngülerin amacı, aynı veya benzer kodu birkaç kez tekrarlamak. Bu tekrarlama belirli bir sayı kadar ya da bir koşul sağlanana kadar sürebilir. Python’da iki tane döngü mevcuttur. Bunlar for döngüsü ve while döngüsüdür.

For Döngüsü

For döngüleri, sabit sayıda tekrarlamak istediğimiz bir kod bloğu olduğunda kullanılır. Sırasıyla dizinin her bir elemanı üzerinde (liste, tuple, string, dictionary olabilir) yineleme yaparak her seferinde bloğu çalıştırır. For döngüsü, “range” ve “xrange” işlevlerini kullanarak bir sayı dizisi üzerinde yineleme yapar. range ile xrange arasındaki fark, range belirtilen aralıktaki sayılar ile bir liste döndürmesidir.

INPUT:

for i in range(0,10):
    print(i)

OUTPUT:
0 
1 
2 
3 
4 
5 
6 
7 
8 
9

INPUT:

t = 0
for k in range(100):
    t += k
print(t)


OUTPUT:

4950


INPUT:


people = ["Ahmet","Mehmet","Ali"]
for name1 in people:
  print("Kişi adı = {}".format(name1))


OUTPUT:


Kişi adı = Ahmet 
Kişi adı = Mehmet 
Kişi adı = Ali
INPUT:

for i in "pi404":
     print(i)

OUTPUT:

p 
i 
4 
0 
4

INPUT:

for x in range(3,30,3):  
    print(x) 
#3’den başlayıp 30’a kadar 3’er 3’er 
#artarak değerleri yazar.

OUTPUT:

3 
6 
9 
12 
15 
18 
21 
24 
27

INPUT:

List1 = [1,2,3,4,5]
new_list = []
for employee in List1:
    employee+= 5
    new_list.append(employee) 
new_list 

OUTPUT:

[6, 7, 8, 9, 10]

Break komutu bir for ya da while döngüsünden çıkmak için kullanılırken, continue komutu ise geçerli blogu atlamak için kullanılır.

INPUT:


stuff = ["bardak","kasik","catal","dolab","masa"]
for new_stuff in stuff:
      if new_stuff == "catal":
         print("Döngü bitti")
         break;

         
OUTPUT:

Döngü bitti

 

 

While Döngüsü

Belirli bir koşul gerçekleşene kadar devam eden döngülere while döngüleri denir.

INPUT:

num1 = 3
sumOf = 0
totalSum = 0
while sumOf < 100:
          sumOf = sumOf + num1
          totalSum +=1
print("Toplam = %d" % sumOf)
print("Döngü sayısı = %d" % totalSum)  

OUTPUT:

Toplam = 102 
Döngü sayısı = 34
INPUT:

list1 = [1,2,3,4,5]
i = 0
while list1[i] != 5:
           print("Seçili eleman = ", list1[i])
           i += 1

OUTPUT:


Seçili eleman =  1 
Seçili eleman =  2 
Seçili eleman =  3 
Seçili eleman =  4

For ve while döngülerinde, döngü bitiminde ya da döngü koşulu başarısız olduğunda yapmak istediğimiz bir eylem varsa else komutunu kullanabiliriz. Eğer döngüden break  komutu ile çıkılırsa, else blogu atlanır.

INPUT:

num1 = 10
while num1 > 5:
          num1-= 1
          print(num1)
else:
        print("Sayi 5’ten küçük, döngü sona erdi.")

OUTPUT:

9 
8 
7 
6 
5 
Sayi 5’ten küçük, döngü sona erdi.
 

İç İçe Döngüler

For ve While döngüleri iç içe döngü olarak kullanılabilirler. Ayrıca for döngüsünden oluşan iç içe döngü ve while döngüsünden oluşan  iç içe döngüler de yaratmak mümkündür.

INPUT:

#Çarpım Tablosu
for i in range(1,11):
      k = 1
      print("{} ile çarpım".format(i))
      while k < 11:
                multiply1 = i*k
                print("\n{}x{} = {}".format(i,k, multiply1))
                k = k + 1
      print("--------------------")

OUTPUT:

1 ile çarpım
 
1x1 = 1 , 1x2 = 2 , 1x3 = 3 , 1x4 = 4 , 1x5 = 5 , 1x6 = 6 ,   1x7 = 7 , 1x8 = 8 , 1x9 = 9 , 1x10 = 10 
--------------------
2 ile çarpım 

2x1 = 2 , 2x2 = 4 , 2x3 = 6 , 2x4 = 8 , 2x5 = 10 , 2x6 = 12 , 2x7 = 14 , 2x8 = 16 , 2x9 = 18 , 2x10 = 20 
--------------------

...

-------------------- 
10 ile çarpım 
10x1 = 10 , 10x2 = 20 , 10x3 = 30 , 10x4 = 40 , 10x5 = 50 ,  10x6 = 60 , 10x7 = 70 , 10x8 = 80 , 10x9 = 90 , 10x10 = 100    
--------------------
 

IF-ELSE-ELİF

If-else blokları, programcı tarafından bir bool koşulunun doğru ya da yanlış olmasına göre belirtilen eylemleri gerçekleştirmeye yarayan özelliktir. Kullanımı ise aşağıdaki gibidir:

if (koşul):

       Koşul sağlanırsa çalışacak kodlar

elif (koşul):

       Yukarıdaki koşul sağlanmaz ve  bu koşul sağlanırsa çalışacak kodlar

else:

      Koşullar sağlanmazsa çalışacak kodlar 

 

INPUT:

x = int(input("Lütfen bir değer giriniz : "))
if x > 5:
   print("Girdiğiniz sayı 5’ten büyük")
elif x < 5:
   print("Girdiğiniz sayı 5’ten küçük") 
else:
   print("Girilen sayı 5’tir.")


OUTPUT:

Lütfen bir değer giriniz : 3 
Girdiğiniz sayı 5’ten küçük

INPUT:

num1 = int(input("Lütfen bir sayı giriniz : "))
if num1 %2 == 1:
   print("Girdiğiniz sayı tek sayıdır.")
else:
   print("Girdiğiniz sayi çift sayıdır.")

OUTPUT:

Lütfen bir sayı giriniz : 22 
Girdiğiniz sayi çift sayıdır.

Bir sonraki yazıda Python’dan bahsetmeye devam edeceğim.

PYTNT911Y115N6IC8U