Döngüler;

Ocak 23, 2020 0 Yazar: alikperislam
## not : döngüler, programlama dilinde yüzlerde satırlık işlemi tek tek yazmak yerine tek sefer de kullanım için uygundur.
## for döngüsü:
for x in range(10):   #0 dan 9 a kadar alt alta yazdırır
    print(x)
for x in range (4,8): #4 ten 7 ye kadar alt alta yazdırır
    print(x)
for x in range(10,20,2): #10 dan 18 e kadar 2 şer atlayarak alt alta yazdırır
    print(x)
for x in reversed(range(10,20)): # 10 dan 20 ye değil 20 den 10 a alt alta ters bir biçimde yazdırır (reversed)
    print(x)
for x in (10,20,30,40,50,60):    #10 20 30 40 50 60  alt alta yazdırır
    print(x)
for x in "python programlama dili": # string ifadeleride yazdırır.
    print(x)

a=[2,3,5,7,11,13] #diziyi sırayla alt alta yazdırır.
for x in a:
    print(x)

## for döngüsü için algoritmik bir örnek:
##vize-final puanlarının karşılığı
sayi=int(input("bir sayı giriniz: "))
if sayi>90 :
    print("AA")
elif 90>=sayi>=80:
    print("AB")
elif 80>=sayi>=70:
    print("BB")
elif 70>=sayi>=60:
    print("CB")
elif 60>=sayi>=50:
    print("CC")
elif 50>=sayi>=40:
    print("DC")
else:
    print("DD")


## while döngüsü:
# while döngü yapısı; koşulumuz doğru olduğu sürece bloğu döndürmeye devam ediyor false olana kadar
i=0
while i < 10 :
    print("i: ", i)
    i=i+1  #i+ = 1 'de aynı anlama gelmektedir.
ı=1
while ı<1000 :
    print("ı : ", ı)
    ı=2*ı
##döngülerde kullandığımız değişik anahtar kelimeler
#  break;  dögüyü sonlandırmak
x=0
while x < 10 :
    if x == 5 :
        break
    print("ok. : ", x)
    x+=1
#  continue; döngüyü başa almak için kullanılır istemediğimiz bir veriyi almaz mesela
y=0
while y < 10 :
    if y ==2 or y == 8 :
        y=y+1
        continue           # mesela 2 ve 8 i almadı döngüye saf dışı bıraktı
    print("tamam : ", y)   # if in alt satırına y=y+1 yazmayı unutma döngüye devam etmaz.
    y=y+1
x=1
while x<16:
    print("%s.merhaba"%(x)) # merhaba yazdırır ama başına %. yapıp     %(x) yazarsak sayacını da yazar.
    x+=1
## while döngüsü algoritmik bir örnek :
basla=int(input("başlangıç:"))
bitis=int(input("bitiş:"))
tt=0
ct=0
ts=0
cs=0
i=basla
while i<bitis:
    if i % 2 == 0:
        ct += i
        cs += 1
    else:
        tt += i
        ts += 1
    i +=1
print("tek adet=", ts, "tek toplam", tt)
print("çift adet=", ts, "çift toplam", ct)
print("tek ort=",tt/ts)
print("çift ort=",ct/cs)