Program C untuk Memeriksa Nomor Armstrong

Dalam contoh ini, Anda akan belajar untuk memeriksa apakah bilangan bulat yang dimasukkan oleh pengguna adalah bilangan Armstrong atau bukan.

Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman C berikut ini:

  • Pernyataan C if… else
  • C sementara dan lakukan… saat Loop

Bilangan bulat positif disebut bilangan Armstrong (berorde n) jika

 abcd… = an + bn + cn + dn + 

Dalam kasus bilangan Armstrong yang terdiri dari 3 digit, jumlah pangkat tiga dari setiap digit sama dengan bilangan itu sendiri. Misalnya, 153 adalah bilangan Armstrong karena

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

Periksa Nomor Armstrong tiga digit

 #include int main() ( int num, originalNum, remainder, result = 0; printf("Enter a three-digit integer: "); scanf("%d", &num); originalNum = num; while (originalNum != 0) ( // remainder contains the last digit remainder = originalNum % 10; result += remainder * remainder * remainder; // removing last digit from the orignal number originalNum /= 10; ) if (result == num) printf("%d is an Armstrong number.", num); else printf("%d is not an Armstrong number.", num); return 0; ) 

Keluaran

 Masukkan bilangan bulat tiga digit: 371371 adalah bilangan Armstrong. 

Periksa Armstrong Number dari n digit

 #include #include int main() ( int num, originalNum, remainder, n = 0; float result = 0.0; printf("Enter an integer: "); scanf("%d", &num); originalNum = num; // store the number of digits of num in n for (originalNum = num; originalNum != 0; ++n) ( originalNum /= 10; ) for (originalNum = num; originalNum != 0; originalNum /= 10) ( remainder = originalNum % 10; // store the sum of the power of individual digits in result result += pow(remainder, n); ) // if num is equal to result, the number is an Armstrong number if ((int)result == num) printf("%d is an Armstrong number.", num); else printf("%d is not an Armstrong number.", num); return 0; )

Keluaran

 Masukkan bilangan bulat: 1634 1634 adalah bilangan Armstrong. 

Dalam program ini, jumlah digit integer dihitung terlebih dahulu dan disimpan dalam format n. Dan, pow()fungsi tersebut digunakan untuk menghitung kekuatan digit individu di setiap iterasi forloop kedua .

Artikel yang menarik...