#Python: Python Dersleri 23: For Döngüsü
#Döngüler: FOR Döngüsü
#Döngüler tüm yazılım dilleri için oldukça önemlidir. Kitlesel (büyük çapta) işlemler için kolay bir çözüm sağlarlar.
#FOR DÖNGÜSÜ
#Burada 1 ile 1000 arası sayıları ekrana hızlıca yazdıralım:
for sayi in range(1,1000):
print(sayi)
#Yukarıda görüldüğü gibi bir FOR döngüsü oluşturduk. RANGE ifadesi belli bir aralıktaki sayıları verir. RANGE ile ilgili bir kaç örnek yapalım:
#Range(100): Tek parametreli olduğu için 1 ile 100 arası (100 dail değil) sayıları verir.
for sayi in range(100):
print(sayi)
#Range(25,100): İki parametreli olunca 25 ile 100 arası (100 dahil değil) sayıları verir.
for sayi in range(25,100):
print(sayi)
#Range(75,125,5): Üç parametreli olunca 75 ile 125 arası (125 dahil değil) sayıları 5'er adım atlayarak verir.
for sayi in range(75,125,5):
print(sayi)
####################################
#for döngüsünü metinler için de kullanabiliriz:
for harf in "Dünya yuvarlaktır.":
print(harf)
#Yukarıda görüldüğü gibi eğer metinler için yapılırsa metin içindeki her bir harfi inceler.
#Aşağıdaki örnekte ise metin içindeki "a" harflerini saydıralım:
metin="""
Rus enerji şirketi Gazprom'un Temsilcisi Sergey Kupriyanov, Ukrayna üzerinden doğal gaz sevkiyatı talebinde bugün önemli miktarda
düşüş yaşandığını belirterek, "Gazprom, 21 Mayıs'ta Ukrayna üzerinden 45,9 milyon metreküp doğal gaz sevkiyatı gerçekleştirecek." dedi.
Kupriyanov, başkent Moskova'da gazetecilere yaptığı açıklamada, Rusya'nın Ukrayna üzerinden gerçekleştirdiği günlük doğal gaz sevkiyatına ilişkin bilgi verdi.
Bugün Ukrayna üzerinden doğal gaz sevkiyatı talebinde önemli miktarda azalış yaşandığını dile getiren Kupriyanov, "Gazprom, 21 Mayıs'ta Ukrayna üzerinden
45,9 milyon metreküp doğal gaz sevkiyatı gerçekleştirecek." dedi.
Gazprom, dün Ukrayna üzerinden 62,4 milyon metreküp doğal gaz sevk etmişti. Böylece, Ukrayna üzerinden Avrupa'ya gönderilen doğal gaz hacmi düne göre
yüzde 26,4 azalmış olacak.
"""
adet=0
for harf in metin:
if harf=="a":
adet+=1
print("İlgili metinde toplam",adet,"tane \"a\" harfi vardır.")
#Yukarıdaki işlem incelendiğinde öncelikle adet sıfır olarak tanımlandı. Daha sonra her bir harf incelendi ve eğer harf "a" harfine eşit olursa adet 1 artırıldı. Bu işlem toplam 74 defa tekrar etti.
for sayi in range(101):
print(sayi, "sayısının karesi:",sayi**2,"ve küpü ise",sayi**3)
################
#Aşağıdaki örnekte faktoriyel hesaplayalım:
sayi=int(input("Bir sayı giriniz:"))
faktoriyel=1#faktöriyel baştan 1 olarak tanımlandı. Öyle yapılmazsa baştan sıfır olarak tanımlanır ve sonraki işlemlerde çarpma yapılırken herşeyi sıfır ile çarpar.
for i in range(1,sayi+1):#sayi+1 yazılması önemlidir. Örneğin 6 girilirse range(1,7) olur ki burada 7 dahil olmadığı için 6'ya kadar yapar.
faktoriyel*=i
print(sayi,"sayısının faktöriyeli:",faktoriyel)
##########################################################3
#Listeler için de FOR döngüsü kullanılabilir.
"""
Aşağıdaki örnekte çalışan kişiler ve brüt maaşlarının olduğu bir sözlük vardır.
Burada amacımız brüt maaşları tespit edip net maaşı hesaplamaktır.
İşlem kolaylığı için öncelikle maaşlardan %20 SGK kesintisi yapacağız ve daha sonra kalan kısımdan %15 vergi keseceğiz.
"""
calisan_listesi={
"Abdullah Kaya":13711,
"Abdulselam Ozarslan":13296,
"Ahmet Aras":13531,
"Ahmet Demirkol":14367,
"Ahmet Turunç":14768,
"Ali Rıza Kıldeş":14109,
"Asım Dursun":14860,
"Atalay Gençel":13959,
"Aydın Tarı":13247,
"Cüneyt Güçün":13337,
"Damla Fidan":11670,
"Deniz Berkay Çiçek":13599,
"Derya Arıkboğa":12982,
"Elif Aslan":10642,
"Emine Torun":11997,
"Erkan Yüzgeç":11274,
"Faruk Uzman":13994
}
net_maaslar=dict()#Önce net maaşlar ile ilgili bir sözlük oluşturduk. Burada amacımız net maaşlar ile ilgili de benzer şekilde bir sözlük oluşturup buraya atama yapmaktır.
for kisi in calisan_listesi:#Burada kisi değişkenine ilgili sözlüğün anahtarı atanır.
brut_maas=calisan_listesi[kisi]
SGK_Sonrasi_Kalan=brut_maas*0.8#%20 SGK kesintisi sonrası kalan tutar hesaplandı.
net_maas=SGK_Sonrasi_Kalan*0.85#Vergi sonrası net maaş tespit edildi.
net_maaslar[kisi]=round(net_maas,2)#Virgülden sonra 2 basamak bıraktık. Yoksa çok uzun bir küsürat çıkabilir.
print(net_maaslar)
#Dilerseniz net maaşları teker teker de yazdırabilirsiniz.
for kisi in net_maaslar:
print(kisi,"adındaki çalışanın brüt maaşı",calisan_listesi[kisi],"TL ve net maaşı ise",net_maaslar[kisi],"TL'dir.")
Python: Python Dersleri 23: For Döngüsü
Kodu Kopyala
TÜM PYTHON KODLARI
Youtube Kanalımız
Aşağıdaki makrolar işinize yarayabilir.
Aşağıdaki makrolar işinize yarayabilir.