Pemeriksa Nomor Python Armstrong

Verifikasi apakah suatu bilangan merupakan bilangan Armstrong (narsistik) yang jumlah digit-digitnya yang dipangkatkan dengan jumlah digitnya sama dengan bilangan itu sendiri.

Coba di Editor

Ikhtisar

Bilangan Armstrong (juga dikenal sebagai bilangan invarian digital narsistik atau pluperfect) adalah bilangan n-digit yang sama dengan jumlah pangkat ke-n dari digit-digitnya.

Misalnya, 153 adalah bilangan Armstrong 3 digit karena 1^3 + 5^3 + 3^3 = 153. Demikian pula, 9474 adalah bilangan Armstrong 4 digit karena 9^4 + 4^4 + 7^4 + 4^4 = 9474.

Kami menerapkan ini dengan Python dengan mengonversi bilangan bulat menjadi string untuk menghitung jumlah digit dengan mudah dan mengulangi setiap digit.

Kode & Output Eksekusi

Periksa serangkaian angka untuk menentukan apakah memenuhi kriteria matematika untuk angka Armstrong.

armstrong.py
Coba di Editor
def is_armstrong(num):
    num_str = str(num)
    n = len(num_str)
    digit_sum = sum(int(digit) ** n for digit in num_str)
    return digit_sum == num

test_nums = [153, 370, 9474, 123]
for val in test_nums:
    result = "Armstrong" if is_armstrong(val) else "Not Armstrong"
    print(f"{val:4d} -> {result}")
Keluaran Terminal
 153 -> Armstrong
 370 -> Armstrong
9474 -> Armstrong
 123 -> Not Armstrong

Implementasi Langkah demi Langkah

  • Penelitian teori bilangan dan latihan logika
  • Tugas pemrograman matematika kelas
  • Pemrograman rekreasi

Pertanyaan yang Sering Diajukan

Apakah semua angka satu digit merupakan angka Armstrong?

Ya. Setiap angka yang dipangkatkan 1 sama dengan angka itu sendiri (misalnya, 5^1 = 5).

Topik Terkait