C Program Armstrong számának megjelenítésére két intervallum között

Ebben a példában megtanulja megtalálni az összes Armstrong számot a felhasználó által megadott két egész szám között.

A példa megértéséhez ismernie kell a következő C programozási témákat:

  • C ha … más nyilatkozat
  • C a hurok számára

A pozitív egész számot Armstrong számnak nevezzük (n sorrendben), ha

 abcd… = an + bn + cn + dn + 

Armstrong 3 jegyű száma esetén az egyes számjegyek kockáinak összege megegyezik magával a számmal. Például a 153 egy Armstrong-szám, mert

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 

A program kipróbálása előtt ismerje meg, hogyan ellenőrizhető, hogy egy egész szám Armstrong-e vagy sem.

Armstrong számai két egész között

 #include #include int main() ( int low, high, number, originalNumber, rem, count = 0; double result = 0.0; printf("Enter two numbers(intervals): "); scanf("%d %d", &low, &high); printf("Armstrong numbers between %d and %d are: ", low, high); // iterate number from (low + 1) to (high - 1) // In each iteration, check if number is Armstrong for (number = low + 1; number < high; ++number) ( originalNumber = number; // number of digits calculation while (originalNumber != 0) ( originalNumber /= 10; ++count; ) originalNumber = number; // result contains sum of nth power of individual digits while (originalNumber != 0) ( rem = originalNumber % 10; result += pow(rem, count); originalNumber /= 10; ) // check if number is equal to the sum of nth power of individual digits if ((int)result == number) ( printf("%d ", number); ) // resetting the values count = 0; result = 0; ) return 0; )

Kimenet

 Írjon be két számot (intervallumot): 200 2000 és 200 közötti Armstrong-szám: 370 371 407 1634 

A programban, a külső hurkot iterált a (alacsony + 1) , hogy (a nagy - 1) . Minden iterációban ellenőrizzük, hogy a szám Armstrong-e vagy sem.

A külső hurkon belül először egy egész szám számjegyeinek számát kell kiszámítani és tárolni count. És az egyes számjegyek erejének összegét az eredményváltozó tárolja.

Ha a szám egyenlő result, akkor a szám Armstrong-szám.

Megjegyzés: Vissza kell állítania a számlálást és az eredményt 0-ra a külső hurok minden iterációjában.

érdekes cikkek...