Program Python untuk Memeriksa Nombor Armstrong

Dalam contoh ini, anda akan belajar untuk memeriksa sama ada bilangan bulat n-digit adalah nombor Armstrong atau tidak.

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

  • Python jika … lain Penyataan
  • Python sambil Gelung

Bilangan bulat positif disebut bilangan pesanan Armstrong dan jika

abcd… = a n + b n + c n + d n +…

Sekiranya nombor Armstrong 3 digit, jumlah kubus setiap digit sama dengan nombor itu sendiri. Sebagai contoh:

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 ialah nombor Armstrong. 

Kod Sumber: Periksa nombor Armstrong (untuk 3 digit)

 # Python program to check if the number is an Armstrong number or not # take input from the user num = int(input("Enter a number: ")) # initialize sum sum = 0 # find the sum of the cube of each digit temp = num while temp> 0: digit = temp % 10 sum += digit ** 3 temp //= 10 # display the result if num == sum: print(num,"is an Armstrong number") else: print(num,"is not an Armstrong number") 

Keluaran 1

 Masukkan nombor: 663 663 bukan nombor Armstrong 

Keluaran 2

 Masukkan nombor: 407 407 adalah nombor Armstrong 

Di sini, kami meminta nombor pengguna dan periksa apakah itu nombor Armstrong.

Kita perlu mengira jumlah kubus setiap digit. Oleh itu, kami menginisialisasi jumlah hingga 0 dan memperoleh setiap nombor digit dengan menggunakan modulus operator%. Baki nombor apabila dibahagi dengan 10 adalah digit terakhir nombor itu. Kami mengambil kiub menggunakan operator eksponen.

Akhirnya, kita membandingkan jumlahnya dengan nombor asal dan menyimpulkan bahawa itu adalah nombor Armstrong jika mereka sama.

Kod Sumber: Periksa bilangan digit n Armstrong

num = 1634 # Changed num variable to string, # and calculated the length (number of digits) order = len(str(num)) # initialize sum sum = 0 # find the sum of the cube of each digit temp = num while temp> 0: digit = temp % 10 sum += digit ** order temp //= 10 # display the result if num == sum: print(num,"is an Armstrong number") else: print(num,"is not an Armstrong number") 

Anda boleh mengubah nilai angka dalam kod sumber dan jalankan lagi untuk mengujinya.

Artikel menarik...