Əsas Fərq – while və do while loop
Proqramlaşdırmada ifadələr blokunu təkrar-təkrar yerinə yetirmək üçün lazım olan vəziyyətlər ola bilər. Əksər proqramlaşdırma dilləri kodu təkrarlamaq üçün for loop, while loop və do while loop kimi müxtəlif idarəetmə strukturlarını dəstəkləyir. Döngələr verilmiş şərt yalan olana qədər bir sıra ifadələri dəfələrlə yerinə yetirməyə imkan verir. Döngəyə aid ifadələr bir cüt qıvrım mötərizənin içərisinə daxil edilir. Bu məqalədə iki idarəetmə strukturu arasındakı fərq müzakirə olunur: while loop və do while loop. while döngəsi verilmiş şərt doğru olduğu halda ifadəni və ya ifadələr qrupunu təkrarlamaq üçün istifadə olunur. Döngə daxilində ifadələri yerinə yetirməzdən əvvəl vəziyyəti yoxlayır. do while döngüsü while dövrəsinə bənzəyir. Amma şərt dövrə daxilində ifadələrin icrasının sonunda yoxlanılır. while loop və do while loop arasındakı əsas fərq ondan ibarətdir ki, while loop döngü daxilində ifadələri yerinə yetirməzdən əvvəl şərti yoxlayır, do while döngüsü isə döngü daxilində ifadələri yerinə yetirdikdən sonra şərti yoxlayır.
while loop nədir?
While döngəsi verilmiş şərt doğru olana qədər hədəf ifadəsini və ya ifadələrini icra edir. Birincisi, while döngüsü şərtin doğru olub olmadığını yoxlayır. Şərt doğrudursa, şərt doğru olana qədər döngəni təkrarlayır. Şərt yanlış olduqda, idarəetmə döngədən dərhal sonra növbəti kod sətrinə keçir. while dövrəsində bir ifadə və ya bir neçə ifadə ola bilər. Aşağıdakı proqrama baxın.
Şəkil 01: while dövrə nümunəsi
Yuxarıdakı proqrama əsasən, x dəyişəni 1-ə inisiallaşdırılır. while dövrəsinin ifadələri x dəyəri 5-dən kiçik və ya ona bərabər olana qədər yerinə yetiriləcək. İlkin olaraq qiymət 1-dir və şərt doğrudur. Beləliklə, x çap edəcək. Sonra x dəyəri 1 artırılır. İndi x dəyəri 2-dir. 5-dən kiçik və ya ona bərabərdir. Beləliklə, x çap edəcək. Yenə x dəyəri 1 artırılır. İndi x 3-dür. 5-dən kiçik və ya ona bərabərdir. Beləliklə, x yenidən çap edəcək və bir artır. İndi x 4-dür. O, həm də 5-dən kiçik və ya bərabərdir. Beləliklə, x çap edəcək. X-in dəyəri yenidən artırılır. Növbəti iterasiyada x dəyəri 5 olur. 5-ə bərabərdir. Yenə də şərt doğrudur. Beləliklə, x çap edəcək. X dəyəri yenidən artırılır. 6-dır. Amma indi şərt yanlışdır, çünki 6 5-dən böyükdür. Döngənin icrası başa çatır. Proqramda artım yoxdursa, x dəyəri həmişə 1 olacaqdır. Şərt həmişə doğru olacaq, çünki o, 5-dən kiçikdir. Buna görə də o, sonsuz dövrə olacaq.
Do while döngüsü nədir?
do while dövrəsi while dövrəsinə bənzəyir. Lakin vəziyyət dövriyyə ifadələri yerinə yetirildikdən sonra yoxlanılır. Beləliklə, şərtin doğru və ya yalan olmasından asılı olmayaraq, dövrə ən azı bir dəfə yerinə yetiriləcəkdir. Döngə icra edildikdən sonra vəziyyət yoxlanılır. Şərt doğru olarsa, döngə ifadələri yenidən icra olunacaq. Şərt yanlış olana qədər bu proses təkrarlanır. Aşağıdakı proqrama baxın.
Şəkil 02: do while loop nümunəsi
Yuxarıdakı proqrama əsasən, x dəyişəni 1-ə işə salınır. Döngü x dəyərini yerinə yetirir və çap edir. Sonra x dəyəri 1 artırılır. İndi 2-dir. Şərt doğrudur, buna görə də dövrə yerinə yetirilir. x çap olunur və artırılır. İndi 3-dür. Şərt doğrudur, ona görə də dövrə icra olunur. x çap olunur və yenidən artırılır. İndi 4-dür. Şərt doğrudur. Döngə yerinə yetirilir. x çap olunur və artırılır. İndi x 5-dir. Yenə də şərt doğrudur, çünki 5-dən kiçik və ya ona bərabərdir. Beləliklə, dövrə yenidən icra olunur və x dəyərini çap edir. Onda x 1 artırılır. İndi x 6-dır. Şərt yanlışdır. Döngənin icrası dayandırılır.
Fərz edək ki, x başlanğıcda 10-a təyin edilib. Yenə də dövrə x dəyərini yerinə yetirəcək və çap edəcək, çünki şərt dövrənin sonunda sınaqdan keçirilir. Vəziyyəti yoxlayanda yalan olur. Beləliklə, dövrənin icrası dayandırılır. Hətta şərt doğru və ya yalan olsa belə, do while dövrəsi ən azı bir dəfə yerinə yetiriləcək. Bu, do while döngüsü prosesidir.
while və do while dövrəsi arasındakı oxşarlıq nədir?
Hər ikisi proqramlaşdırmada nəzarət strukturlarıdır
while və do while döngüsü arasındakı fərq nədir?
while vs do while loop |
|
Wire loop verilmiş Boolean şərti əsasında kodun təkrar icrasına imkan verən idarəetmə strukturudur. | Do while dövrəsi ən azı bir dəfə kod blokunu icra edən və blokun sonunda verilən Boolean vəziyyətindən asılı olaraq bloku təkrar-təkrar yerinə yetirən və ya yerinə yetirməyən idarəetmə strukturudur. |
Vəziyyət Bəyanatı | |
While dövrəsinin şərt ifadəsi dövrənin əvvəlindədir. | do while dövrünün şərt ifadəsi dövrənin sonundadır. |
İcra | |
While dövrəsi yalnız şərt doğru olduqda yerinə yetiriləcək. | Şərt yanlış olsa da, do while ən azı bir dəfə icra edilə bilər. |
Xülasə – while və do while döngüsü
Proqramlaşdırmada bəzən ifadələr toplusunu təkrar-təkrar icra etmək lazımdır. Bunun üçün nəzarət strukturlarından istifadə olunur. Onlardan ikisi while və do while dövrəsidir. Bu məqalə while loop və do while loop arasındakı fərqi müzakirə etdi. while döngəsi verilmiş şərt doğru olduğu halda ifadəni və ya ifadələr qrupunu təkrarlamaq üçün istifadə olunur. do while döngəsində, döngü daxilindəki ifadələrin icrasının sonunda şərt yoxlanılır. do while döngüsü while dövrəsinə bənzəyir, lakin şərt doğru və ya yalan olsa da, do while dövrəsi ən azı bir dəfə icra edilə bilər. while döngüsü ilə do while loopu arasındakı fərq ondadır ki, while loop loop daxilindəki ifadələri yerinə yetirməzdən əvvəl şərti yoxlayır, do while döngüsü isə döngü daxilindəki ifadələri yerinə yetirdikdən sonra şərti yoxlayır.