Ana içeriğe atla

While dövrü - Dərs 17

If ifadəsi şərt doğrunu(true) göstərərsə,bir dəfə işə salınır və heç vaxt yalan(false) göstərmir.While ifadəsi də buna oxşardır,lakin while ifadəsi 1-dən daha çox işə salınır.Yəni şərt keçərli olduğu müddət ərzində hər bir ifadə təkrar-təkrar yerinə yetirilir.Bir dəfə yalan(false) qiyməti verildikdən sonra növbəti kodun icrasına başlanılır.Aşağıda while dövrünün bitdiyi yerdə 1-dən 5-ə qədər sayan dəyişəni olan bir while dövrü verilmişdir:

i = 1
while i <=5:
   print(i)
   i = i + 1

print("Bitdi!")

Nəticə ekrana belə çıxacaqdır:

>>>
1
2
3
4
5
Bitdi!
>>>

Bir while dövrünün gövdəsindəki kod təkrar təkrar icra olunur.Buna təkrarlanma deyilir.

Sonsuz dövr(infinite loop) while dövrünün xüsusi növüdür.O işləməyi heç vaxt dayandırmır.Aşağıda sonsuz dövrə nümunə vardır:

while 1==1:
  print("Dövrdədir.") 

Bu nümunə sonsuz sayda "Dövrdədir." nəticəsini verəcəkdir.Proqramın icrasını Ctrl+C düymələrindən istifadə etməklə və ya proqramı bağlamaqla dayandıra bilərsiniz.

Vaxtından əvvəl while dövrünü bitirmək üçün break ifadəsindən istifadə olunur:

i = 0
while 1==1:
  print(i)
  i = i + 1
  if i >= 5:
    print("Qırılır")
    break

print("Bitdi!")

Nəticə:

>>>
0
1
2
3
4
Qırılır
Bitdi!
>>>

Dövrdən kənarda break ifadəsindən istifadə etmək xəta yaradır.

Dövrlərin içərisində istifadə oluna bilən növbəti ifadə continue-dir.Continue dövrü dayandırmaq yerinə onun üst tərəfinə atlayaraq davam edər:

i = 0
while True:
   i = i +1
   if i == 2:
      print("Ötürülür 2")
      continue
   if i == 5:
      print("Qırılır")
      break
   print(i)

print("Bitdi")

Nəticə:

>>>
1
Ötürülür 2
3
4
Qırılır
Bitdi
>>>

Sadə izah etsək,continue cari təkrarlanmanı dayandırır və növbəti kod ilə davam edir.Continue ifadəsini də dövr xaricində istifadə etmək xətaya yol açır.

Yorumlar

Yorum Gönder