C programa natūralių skaičių sumai apskaičiuoti

Šiame pavyzdyje išmoksite apskaičiuoti vartotojo įvestų natūralių skaičių sumą.

Norėdami suprasti šį pavyzdį, turėtumėte žinoti šias C programavimo temas:

  • C kilpai
  • C kol ir daryk … kol kilpa

Teigiami skaičiai 1, 2, 3 … yra žinomi kaip natūralieji skaičiai. Natūralių skaičių iki 10 suma yra:

 suma = 1 + 2 + 3 +… + 10 

Natūralių skaičių, naudojamo kilpai, suma

 #include int main() ( int n, i, sum = 0; printf("Enter a positive integer: "); scanf("%d", &n); for (i = 1; i <= n; ++i) ( sum += i; ) printf("Sum = %d", sum); return 0; ) 

Pirmiau nurodyta programa paima vartotojo įvestį ir išsaugo ją kintamajame n. Tada forciklas naudojamas apskaičiuojant sumą iki n.

Natūralių skaičių, naudojant kilpą, suma

 #include int main() ( int n, i, sum = 0; printf("Enter a positive integer: "); scanf("%d", &n); i = 1; while (i <= n) ( sum += i; ++i; ) printf("Sum = %d", sum); return 0; ) 

Rezultatas

 Įveskite teigiamą skaičių: 100 Suma = 5050 

Abiejose programose ciklas kartojamas n kartų. Kiekvienoje iteracijoje i vertė pridedama prie sumos ir i didinama 1.

Nors abi programos yra techniškai teisingos, foršiuo atveju geriau naudoti ciklą. Taip yra todėl, kad kartojimų skaičius yra žinomas.

Minėtos programos neveikia tinkamai, jei vartotojas įveda neigiamą sveikąjį skaičių. Čia yra nedidelis pirmiau minėtos programos pakeitimas, kai mes nuolat imame iš vartotojo įvestį, kol bus įvestas teigiamas sveikasis skaičius.

Skaitykite įvestį, kol bus įvestas teigiamas sveikasis skaičius

 #include int main() ( int n, i, sum = 0; do ( printf("Enter a positive integer: "); scanf("%d", &n); ) while (n <= 0); for (i = 1; i <= n; ++i) ( sum += i; ) printf("Sum = %d", sum); return 0; ) 

Apsilankykite šiame puslapyje ir sužinokite, kaip surasti natūralių skaičių sumą naudojant rekursiją.

Įdomios straipsniai...