C Program untuk Menunjukkan Angka Armstrong Antara Dua Selang

Dalam contoh ini, anda akan belajar mencari semua nombor Armstrong antara dua bilangan bulat yang dimasukkan oleh pengguna.

Untuk memahami contoh ini, anda harus mempunyai pengetahuan mengenai topik pengaturcaraan C berikut:

  • C jika… lain Penyataan
  • C untuk Gelung

Bilangan bulat positif disebut nombor Armstrong (urutan n) jika

 abcd… = an + bn + cn + dn + 

Bagi bilangan Armstrong 3 digit, jumlah kubus setiap digit sama dengan nombor itu sendiri. Sebagai contoh, 153 adalah nombor Armstrong kerana

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

Sebelum mencuba program ini, pelajari cara memeriksa sama ada bilangan bulat adalah nombor Armstrong atau tidak.

Nombor Armstrong Antara Dua Integer

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

Pengeluaran

 Masukkan dua nombor (selang): 200 2000 nombor Armstrong antara 200 dan 2000 adalah: 370 371 407 1634 

Dalam program ini, gelung luar diulang dari (rendah + 1) hingga (tinggi - 1) . Dalam setiap lelaran, diperiksa sama ada nombor adalah nombor Armstrong atau tidak.

Di dalam gelung luar, bilangan digit bagi bilangan bulat dikira terlebih dahulu dan disimpan di count. Dan, jumlah kekuatan digit disimpan dalam pemboleh ubah hasil.

Sekiranya nombor sama dengan result, nombor itu adalah nombor Armstrong.

Catatan: Anda perlu menetapkan semula kiraan dan menghasilkan 0 pada setiap lelaran gelung luar.

Artikel menarik...