Jinsi ya Kutumia Mizunguko ya do while katika C: Sarufi, Mifano, na Matumizi ya Kitaalamu

1. Utangulizi

Umuhimu wa Kujirudia katika Programu ya C

Katika programu, “kujirudia”—kurudia mchakato uleule mara nyingi—ni muhimu. Katika C, taarifa ya for, taarifa ya while, na, kama inavyoangaliwa katika makala hii, taarifa ya do while zote hutumika kwa kujirudia. Makala hii inazingatia taarifa ya do while, ikieleza matumizi yake ya msingi na mifano ya vitendo.

2. Msingi wa Taarifa ya do while

Sintaksisi ya Msingi ya Taarifa ya do while

Taarifa ya do while inahakikisha kuwa mwili wa kioro utatekelezwa angalau mara moja. Sintaksisi ni kama ifuatavyo:

do {
    // Code to execute
} while (condition);

Katika sintaksisi hii, msimbo ndani ya kitalu cha do unatekelezwa kwanza, kisha hali inatathminiwa. Ikiwa hali ni true, kioro kinarudiwa. Ikiwa ni false, kioro kinaisha.

Tofauti na Taarifa ya while

Kwa taarifa ya while, hali inaangaliwa kwanza, na ikiwa ni true tu ndipo mwili wa kioro unatekelezwa. Kwa upande mwingine, taarifa ya do while inatekeleza mwili wa kioro kabla ya kuangalia hali, hivyo inaendesha angalau mara moja daima.

3. Wakati wa Kutumia Taarifa za do while

Kurudia Kuingiza Data ya Mtumiaji

Taarifa ya do while ni bora wakati wa kuthibitisha data ya mtumiaji. Kwa mfano, wakati wa kumudu mtumiaji aingize nywila, unaweza kutumia kioro cha do while kuhakikisha kuwa ingizo la kwanza ni sahihi. Ikiwa ingizo ni batili, msimbo humudu mtumiaji tena—hii ni rahisi kutekeleza na do while.

Uchakataji wa Kioro cha Mchezo

Taarifa ya do while pia ni muhimu katika michezo, ambapo unataka kurudia vitendo fulani hadi mchezaji achague kusimamisha. Kwa mfano, unaweza kuendelea na kioro mradi mchezaji achague “Endesha Mchezo.”

4. Mifano ya Msimbo wa Taarifa ya do while

Mfano wa Msingi wa Taarifa ya do while

Hii ni mfano wa msingi wa jinsi ya kutumia taarifa ya do while:

#include <stdio.h>

int main() {
    int i = 0;

    do {
        printf("Count: %dn", i);
        i++;
    } while (i < 5);

    return 0;
}

Katika mfano huu, msimbo ndani ya kitalu cha do unatekelezwa kwanza, na kioro kinaendelea mradi i iwe chini ya 5. Kwa hivyo, nambari kutoka 0 hadi 4 zinachapishwa.

Mfano wa Kuingiza Data ya Mtumiaji

Hii ni mfano ambapo programu inaendelea na kioro hadi mtumiaji aingize thamani ndani ya kipindi maalum:

#include <stdio.h>

int main() {
    int number;

    do {
        printf("Please enter a number between 1 and 10: ");
        scanf("%d", &number);
    } while (number < 1 || number > 10);

    printf("You entered: %dn", number);

    return 0;
}

Katika msimbo huu, ikiwa mtumiaji anaingiza nambari nje ya kipindi cha 1 hadi 10, programu itamudu ingizo tena, ikirudia kioro hadi nambari sahihi iingizwe.

5. Kioro Chisicho na Mwisho na Udhibiti

Kuunda Kioro Chisicho na Mwisho

Unaweza kuunda kioro chisicho na mwisho kwa taarifa ya do while kwa kufanya hali iwe true daima. Kioro chisicho na mwisho kinarudia milele.

do {
    // Code that repeats forever
} while (1);

Jinsi ya Kudhibiti Kioro Chisicho na Mwisho

Ili kudhibiti kioro chisicho na mwisho, tumia taarifa za break na continue:

  • Taarifa ya break : Inatumika kutoka katika kioro.
  • Taarifa ya continue : Inaruka sehemu iliyobaki ya kioro na kuanza mara ya kushindana inayofuata.

Hii ni mfano unaotumia break katika kioro chisicho na mwisho:

#include <stdio.h>

int main() {
    int count = 0;

    do {
        printf("Loop count: %dn", count);
        count++;
        if (count > 5) {
            break;
        }
    } while (1);

    return 0;
}

Katika msimbo huu, taarifa ya break inachochewa wakati count inazidi 5, na hivyo kioro kinatoka.

6. Kutumia Hali Nyingi katika Taarifa ya do while

Jinsi ya Kutumia Hali Nyingi

Katika taarifa ya do while, unaweza kuchanganya hali nyingi kwa kutumia viunganishi vya kimantiki kama && (NA) na || (AU).

do {
    // Code to execute
} while (condition1 && condition2);

Mfano na Hali Ngumu

Mfano ufuatao unaangalia ikiwa ingizo la mtumiaji liko ndani ya safu ya 1 hadi 100. Ikiwa sivyo, inaomba ingizo tena:

#include <stdio.h>

int main() {
    int number;

    do {
        printf("Please enter a number between 1 and 100: ");
        scanf("%d", &number);
    } while (number < 1 || number > 100);

    printf("You entered: %dn", number);

    return 0;
}

Kodisi hii inaendelea kuuliza ingizo hadi thamani iliyowekwa iwe kati ya 1 na 100.

7. Muhtasari

Kauli ya do while ni muhimu wakati unahitaji kuhakikisha kuwa mwili wa kitanzi unaendesha angalau mara moja. Kwa kuchagua kati ya while na do while, unaweza kuandika programu zinazobadilika zaidi. Unaweza pia kudhibiti vitanzi kwa break na continue, na kutumia hali nyingi kwa hali za hali ya juu. Kujua vizuri mbinu hizi kutakusaidia kushughulikia vitanzi vizuri katika C.

8. Matatizo ya Mazoezi na Majibu ya Sampuli

Tatizo la Mazoezi

Andika programu inayomwomba mtumiaji aingize nambari kamili kati ya 1 na 10, na inaendelea kumwomba hadi ingizo sahihi lipewe. Wakati nambari sahihi imewekwa, onyesha mara mbili yake.

Jibu la Sampuli

#include <stdio.h>

int main() {
    int number;

    do {
        printf("Please enter a number between 1 and 10: ");
        scanf("%d", &number);
    } while (number < 1 || number > 10);

    printf("Double the entered number: %dn", number * 2);

    return 0;
}

Tatizo hili la mazoezi linaonyesha jinsi ya kutumia kitanzi cha do while kuthibitisha ingizo la mtumiaji, likimwomba tena kwa thamani nje ya safu.

9. Habari Zinazohusiana na Hatua Zinazofuata

Maridadi unapoelewa kauli ya do while, ni muhimu kujifunza jinsi ya kuchagua kati ya aina tofauti za vitanzi (for, while, do while). Mada nyingine muhimu ya programu ya C ni “pointers.” Kuelewa pointers kunakupa uwezo wa kuandika programu za hali ya juu zaidi, kwa hivyo fikiria kuchunguza hii ijayo.

侍エンジニア塾