Bu bölüm başlamadan önce, Python’da matematiksel işlemler ile ilgili birkaç bilgi:

+,-,*,/ sırasıyla toplama,çıkarma, çarpma ve bölmedir.

// işareti ile sonucu daima int olan bölme yapılır. Bölümün ondalık kısmı atılır. Yani 5//2, 2.5 değil 2’ye eşittir.

% ile bir bölme işleminin kalanı bulunur. Örneğin 5%2’nin sonucu 1’dir.

** ile bir sayının üssü alınır. 2**5 32’ye eşittir.

Bunun dışında

x **= y   ile x kendisinin y üssüne,

x %= y   ile x kendisinin y ile bölümünün kalanına,

x  // = y ile x kendisinin y ile bölümünün tamsayısına,

x += y    ile x kendisinin y fazlasına,

x -=y ile x kendisinin y eksiğine,

x *= y ile x kendisinin y katına,

x /= y ile x  kendisinin y ile bölümüne

eşitlenir.

Yukarıda önce print(x) 4 çıktısını verir, sonra x kendisinin 4 ile bölümünün kalanına eşitlenir (4%4=0) ve print(x) 0 çıktısını verir.

For döngüsü bir liste, string veya sıralı sayılar üzerinden sırayla geçmek için kullanılan bir döngüdür. Bu bölümde sadece for döngüsünün belli bir aralıktaki sayıların üzerinden sırayla geçmek için kullanımına değineceğiz.

range() ile for döngüsü

Bir sayı aralığındaki bütün sayıların sırayla üzerinden geçmek için şu şekilde bir for döngüsü yazabiliriz:

Bu kod, 1 ile 5 aralığındaki sayılar için sırasıyla kendi altında bulunan kod bloğunu gerçekleştirir. “i” değişkeni sırasıyla 1,2,3,4 değerlerini alır. range(x,y) için, y sıralanan sayılara dahil değildir. For’un altında bulunan kod bloğunun gerçekleştirilme sayısı, y-x’tir.

For döngüsünün içerisinde i değişkeni kullanılmak zorunda değildir, ve değişkenin isminin i olması zorunlu değildir. Aşağıdaki gibi, sadece bir kodu tekrarlamak için for döngüsü yazılabilir.

range(x,y,z) şeklinde for döngüsüne bir “atlama miktarı” eklenebilir. Bu durumda sayılar her defasında z kadar artar. Sayılar asla x-y aralığından dışarı çıkmaz.

Bu kodun çıktısı 1,3,5,7,9’dur.

For döngüsü geriye doğru da yapılabilir. Bu durumda atlama miktarının kesinlikle negatif olması gerektiğini unutmayınız.

Bu kodun çıktısı 4,3,2’dir. İkinci sayı aralığa dahil değildir.

En basit haliyle range’i, bir kodu belli bir miktar gerçekleştirmek için şu şekilde kullanabiliriz:

break ifadesi ile, for döngüsünün normal işleyişini bitirerek döngüden çıkabiliriz. Yani:

Normalde 1000 kez tekrar edecek olan bu kod, i 4’e eşit olunca durduğu için sadece 4 kez tekrarlanır. Şuna dikkat ediniz: i önce 0, sonra 1,2,3,4 olacaktır. 4 olduğunda, print() fonksiyonundan önce break ifadesi döngüyü bitirecek. Dolayısıyla print() sadece 0,1,2,3’te çalışacağından kod 4 kez tekrarlanır. Ancak:

Bu durumda print break’ten önce olduğu için, i==4 olduğunda önce print() çalışacak sonra döngü bitecek. 0,1,2,3 ve 4 için, kod 5 kez tekrar eder.

Şimdi, bir alıştırma yapalım:

Tekrarlı Nakarat

Nakaratında kendini en az iki kez tekrarlayan bir şarkı yazınız. Bu şarkının nakaratını cümle cümle konsola yazdırmak istediğimizi düşünelim. Ben bu alıştırma için Creedence Clearwater Revival’ın Have You Ever Seen The Rain şarkısını kullanacağım.

Şimdi, bunu konsola şu şekilde yazdırabilirim:

Bunu for döngüsü ile yazdırmak isteseydik nasıl olurdu? İlk iki cümle 2 kez tekrar ediyor. Bu şu şekilde yazılabilir:

Verimsiz Çarpma

Çarpma işlemi yapmak için Python’da * işaretini kullanırız. Peki, diyelim ki bu işaretin klavyenin neresinde olduğunu bilmiyoruz ama acilen çarpma yapmamız gerekiyor. Bunu nasıl yaparız?

x’in y ile çarpımı, y kadar x’in toplamıdır. Bundan yola kullanıcıdan çarpmak istediği sayıları alalım:

Şimdi, sonucumuz için boş bir değişken oluşturalım.

y kadar x’in toplamını bulmak 0’a y kadar x eklememiz gerekiyor:

Yukarıdaki kodun çıktısı, kullanıcının girdiği iki sayının çarpımıdır.

4
like
2
love
0
haha
0
wow
0
sad
0
angry
2 Yorum konuları
0 Konu cevapları
0 İzleyiciler
 
En çok tepki verilen yorum
En yeni yorumlar
2 Yorum yazarları
Turgay CelikDenizcan Son yorum yazarları
  Abone ol  
En Yeniler Eskiler Beğenilenler
Bildir
Turgay Celik
Üye

Yararlı