Програма C за показване на числото на Армстронг между два интервала

В този пример ще се научите да намирате всички числа на Армстронг между две цели числа, въведени от потребителя.

За да разберете този пример, трябва да имате познанията по следните теми за програмиране на C:

  • C if… else Изявление
  • C за Loop

Положително цяло число се нарича число на Армстронг (от порядък n), ако

 abcd… = an + bn + cn + dn + 

В случай на число на Армстронг от 3 цифри, сумата от кубчета на всяка цифра е равна на самото число. Например 153 е число на Армстронг, защото

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

Преди да изпробвате тази програма, научете как да проверите дали едно цяло число е число на Армстронг или не.

Числа на Армстронг между две цели числа

 #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; )

Изход

 Въведете две числа (интервали): 200 2000 Числата на Армстронг между 200 и 2000 са: 370 371 407 1634 

В програмата външният цикъл се итерира от (ниска + 1) до (висока - 1) . Във всяка итерация се проверява дали числото е число на Армстронг или не.

Вътре във външния цикъл първо се изчислява броят на цифрите на цяло число и се съхранява в count. И сумата от мощността на отделните цифри се съхранява в променливата на резултата.

Ако числото е равно на result, числото е число на Армстронг.

Забележка: Трябва да нулирате броя и резултата до 0 във всяка итерация на външния цикъл.

Интересни статии...