Gabay sa While Loop ng C: Basics hanggang Advanced

1. Panimula

Sa programming, ang loop processing ay isang mahalagang elemento para sa epektibong pagganap ng mga gawain. Sa wikang C, may ilang istruktura ng loop, at sa mga ito, ang while statement ay pinakamainam na pagpipilian kapag hindi alam ang bilang ng pag-uulit nang pauna. Sa artikulong ito, tatalakayin ang while statement sa C mula sa mga pangunahing gamit hanggang sa mga halimbawa ng aplikasyon, na madaling maunawaan kahit ng mga baguhan. Sa pamamagitan ng mga totoong halimbawa ng code, matutunan mo ang mga benepisyo ng while statement at magagamit mo ito sa praktikal na aplikasyon.

2. Ano ang while statement sa C?

while statement ay isang loop structure na inuulit ang proseso hangga’t ang kondisyon ay totoo (true). Kapag ang kondisyon ay mali (false), nagtatapos ang loop. Ang sumusunod na code ay nagpapakita ng pangunahing syntax ng while statement.
int i = 0;
while (i < 10) {
    printf("Value ng i: %dn", i);
    i++;  // Dagdagin ang counter
}
Sa code na ito, habang ang i ay mas mababa sa 10, ilalabas ang halaga ng i. Kapag ang i ay naging 10, magtatapos ang loop. Ang while statement ay angkop para sa mga senaryo kung saan hindi alam ang bilang ng pag-uulit dahil ito ay gumagawa ng dynamic na pag-uulit batay sa kondisyon.
侍エンジニア塾

3. Mga Sitwasyon na Dapat Gamitin ang while Loop

while loop ay partikular na kapaki-pakinabang kapag ang bilang ng pag-uulit ay hindi alam nang maaga. Nakakatulong ito kapag naghihintay ka hanggang mag-type ang user ng “tapos” o kapag inuulit ang proseso batay sa input mula sa panlabas na sensor. Sa sumusunod na halimbawa ng code, ipinapakita ang program na tumatanggap ng mga numero nang paulit-ulit hanggang mag-input ang user ng negatibong numero.
int value = 0;
while (value >= 0) {
    printf("Ilagay ang numero: ");
    scanf("%d", &value);
    printf("Ang inilagay na halaga ay: %dn", value);
}
Ang program na ito ay nagtatapos ng loop kapag nag-input ang user ng negatibong halaga. Sa mga senaryong hindi alam ang bilang ng pag-uulit, ang while loop ay napaka-flexible na pagpipilian.

4. Karaniwang mga pagkakamali sa while loop

walang katapusang loop ay isa sa mga karaniwang pagkakamali sa while loop. Ito ay nangyayari dahil ang kondisyon ng pagtatapos ng loop ay hindi kailanman natutupad. Ang sumusunod na code ay isang tipikal na halimbawa nito.
int i = 0;
while (i < 10) {
    printf("Ang halaga ng i: %dn", i);
    // Nakalimutan ang i++!
}
Sa programang ito, dahil hindi nagbabago ang halaga ng i, ang kondisyon na i < 10 ay mananatiling totoo nang walang katapusan, at ang programa ay hindi matatapos at papasok sa walang katapusang loop. Ang walang katapusang loop ay maaaring magdulot ng labis na pasanin sa sistema, kaya mahalagang idisenyo ito upang laging matugunan ang kondisyon ng pagtatapos.

5. Mga Praktikal na Halimbawa ng while Loop

Dito ay magpapakita kami ng ilang totoong halimbawa ng programa gamit ang while loop.

Halimbawa 1: Pag-uulit ng Input ng User

Programang nagpapakita ng mensahe hanggang sa mag-type ang user ng “Tapos”.
char input[50];
while (strcmp(input, "Tapos") != 0) {
    printf("Pakilagay ang mensahe (mag-type ng \"Tapos\" para matapos): ");
    scanf("%s", input);
    printf("Ang inilagay na mensahe ay: %sn", input);
}

Halimbawa 2: Pag-uulit ng Pagdaragdag

Susunod, ipapakita ang programang magpapatuloy sa pagdaragdag ng mga numero hanggang ang kabuuan ay lumampas sa 100.
int sum = 0;
int num = 1;
while (sum < 100) {
    sum += num;
    num++;
    printf("Kasalukuyang kabuuan: %dn", sum);
}
Ipinapakita ng mga halimbawang ito kung paano nagiging flexible ang pag-uulit ng mga proseso gamit ang while loop.

6. Mga advanced na paraan ng paggamit ng while loop

Maaaring gamitin ang while loop kahit sa komplikadong mga proseso. Ang sumusunod ay isang halimbawa ng paggamit ng dobleng while loop upang iproseso ang 2‑dimensional na array.
int i = 0, j = 0;
int matrix[3][3] = {
    {1, 2, 3},
    {4, 5, 6},
    {7, 8, 9}
};

while (i < 3) {
    j = 0;
    while (j < 3) {
        printf("%d ", matrix[i][j]);
        j++;
    }
    printf("n");
    i++;
}
Ipinapakita ng code na ito ang nilalaman ng 2‑dimensional na array gamit ang nested na while loop. Epektibo rin ang while loop sa komplikadong pagproseso ng data.

7. Paghahambing sa Ibang Loop Statements

Sa wikang C, bukod sa while loop, may iba’t ibang uri ng loop. Narito ang paghahambing sa ibang loop statements.
Loop StatementScenario ng PaggamitKatangian
while loopKapag hindi alam ang bilang ng pag-uulitUulitin hangga’t totoo ang kondisyon, sinusuri ang kondisyon una
for loopKapag alam ang bilang ng pag-uulitMaaaring tukuyin ang inisyal na halaga, kondisyon, at pag-update sa isang linya
do-while loopKapag nais mong patakbuhin kahit isang besesSinusuri ang kondisyon sa huli, at tiyak na tatakbo nang hindi bababa sa isang beses
Ang paghahambing ito ay makakatulong sa pagpili ng pinakaangkop na loop statement batay sa pangangailangan ng programa.

8. Buod

Sa artikulong ito, detalyado naming ipinaliwanag ang while loop sa wikang C. Ang while loop ay nagbibigay-daan sa pag-uulit ng mga proseso batay sa flexible at dynamic na kondisyon, kaya kayang tugunan ang iba’t ibang senaryo ng programa. Mag-ingat sa mga walang katapusang loop, at gamitin ang while loop nang epektibo upang mapabuti ang iyong kasanayan sa programming. Subukan ang mga halimbawa ng code sa artikulong ito at maranasan ang kapangyarihan ng while loop.
侍エンジニア塾