Số Armstrong trong Python sử dụng hàm

Chúng ta đã đọc khái niệm về số Amstrong trong chương trình trước. Ở đây, chúng tôi in các số Armstrong trong một khoảng thời gian cụ thể

Xem ví dụ này

Ví dụ này hiển thị tất cả các số Armstrong từ 100 đến 500

đầu ra

Một số là số Armstrong nếu nó bằng tổng các chữ số của chính nó được nâng lên luỹ thừa của các chữ số. Hãy để chúng tôi hiểu số Armstrong bằng cách lấy một ví dụ về một số. Đặt số là n. Tìm số chữ số của số. Mỗi chữ số trong số được lấy và nâng lên lũy thừa n. Tất cả những số đó được cộng lại với nhau và nếu tổng của tất cả những số này bằng chính số đó thì số n là số Armstrong. Nếu không, số n không phải là số Armstrong

Làm cách nào để xác định số Armstrong trong Python?

Hãy để chúng tôi hiểu logic về cách xác định số Armstrong trong python

Bắt đầu khóa học phát triển phần mềm miễn phí của bạn

Phát triển web, ngôn ngữ lập trình, kiểm thử phần mềm và những thứ khác

  1. Số đầu vào được đọc bằng input[]
  2. Giá trị đã nhập được kiểm tra để xác định xem đó có phải là số nguyên hay không
  3. Giá trị đã nhập được kiểm tra để xác định xem nó có lớn hơn 0 không
  4. Khai báo một biến và gán nó bằng 0
  5. Phần còn lại của số đầu vào được tìm ra bằng cách sử dụng toán tử mô đun [%] và điều này cho mỗi chữ số trong số
  6. Lập phương của mỗi chữ số được tìm thấy và thêm vào biến khởi tạo ở bước 4
  7. Số kết quả là sàn chia cho 10
  8. Cho đến khi số đầu vào không lớn hơn 0, lặp lại các bước 5,6 và 7
  9. Nếu số đầu vào bằng với biến được khởi tạo, câu lệnh rằng số đó là số Armstrong được in
  10. Nếu số đầu vào không bằng biến được khởi tạo, câu lệnh rằng số đó không phải là số Armstrong được in

Tất cả các số có một chữ số đều là số Armstrong bởi vì, trong các số có một chữ số, giá trị của một số chữ số “n” là một và bất cứ thứ gì được nâng lên lũy thừa của một là chính số “n”. Hãy xem xét một ví dụ trong đó số n=6

6^1 = 6. Do đó 6 là số Armstrong. Không có số Armstrong có hai chữ số. Hãy xem xét một ví dụ trong đó số n=22

2^2 + 2^2
=4 + 4
=8

Gói phát triển phần mềm tất cả trong một[hơn 600 khóa học, hơn 50 dự án]

Giá
Xem khóa học

600+ Khóa học trực tuyến. hơn 50 dự án. Hơn 3000 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập Trọn đời
4. 6 [85.084 xếp hạng]

Trong ví dụ trên, số n=22 không bằng tổng các chữ số của chính nó được nâng lên luỹ thừa của các chữ số. Do đó n không phải là số Armstrong. Có bốn số Armstrong có ba chữ số. Xem xét một ví dụ trong đó số n=371

3^3 + 7^3 + 1^3
=27 + 343 + 1
=371

Trong ví dụ trên, số n=371 bằng tổng các chữ số của chính nó được nâng lên luỹ thừa của các chữ số. Do đó n là số Armstrong. Có hai số Armstrong có bốn chữ số. Hãy xem xét một ví dụ trong đó số n=1634

1^4 + 6^4 + 3^4 + 4^4
=1 + 1296 + 81 + 256
=1634 0: digit = temporary % 10 result += digit ** 3 temporary //= 10 # result is displayed if number == result: print[number," - an Armstrong number"] else: print[number," - not an Armstrong number"]

đầu ra

Đầu ra của chương trình trên với đầu vào là 1234,

Ví dụ #2

Hãy cho chúng tôi hiểu cách xác định số Armstrong bằng ngôn ngữ lập trình python bằng danh sách

Mã số

# Program to check Armstrong numbers using list	
number=int[input["Please input any number: "]]
number1=list[map[int,str[number]]]
number2=list[map[lambda x:x**3,number1]]
if[sum[number2]==number]:
	print["The given number is an armstrong number. "]
else:
	print["The given number isn't an arsmtrong number. "]

đầu ra

Đầu ra của chương trình trên với đầu vào là 542,

Ví dụ #3

Hãy cho chúng tôi hiểu cách xác định số Armstrong trong ngôn ngữ lập trình python bằng hàm đệ quy

Mã số

# Program to check Armstrong numbers using recursive function	
# getSum[] recursive function is defined
def getSum[number]:
    if number == 0:
        return number
    else:
        return pow[[number%10],order1] + getSum[number//10]	
# storing the input in number variable
number = int[input["Please input any number: "]]	
# len[] and str[] function is used to find the order
order1 = len[str[number]] 	
# getSum[] gives the sum and the sum variable is initialised
sum = getSum[number]	
# the sum is equal to number or not is checked
if sum == int[number]:
# Determining if the number is an Armstrong number 
	print[number," - an Armstrong Number."] 
else:
# Determining if the number is not an Armstrong number
	print[number," - not an Armstrong Number."]

đầu ra

Đầu ra của chương trình trên với đầu vào là 1634,

Phần kết luận

Trong bài viết này, chúng ta đã tìm hiểu về số Armstrong trong python, logic để xác định số Armstrong và các loại chương trình python sử dụng câu lệnh if-else, hàm đệ quy, vòng lặp for, list để kiểm tra xem một số đã cho có phải là số Armstrong hay không. Bài viết này sẽ giúp bạn đọc lần ra các chương trình viết bằng python để xác định xem một số đã cho có phải là số Armstrong hay không

Bài viết được đề xuất

Đây là hướng dẫn về Số Armstrong trong Python. Ở đây chúng tôi thảo luận về cách xác định Số Armstrong trong Python cùng với các ví dụ và triển khai mã. Bạn cũng có thể xem qua các bài viết liên quan khác của chúng tôi để tìm hiểu thêm –

Số Armstrong trong python sử dụng vòng lặp while là gì?

Thuật toán 1 – Kiểm tra số Armstrong bằng vòng lặp While . Khởi tạo cur_dig với giá trị temp%10 i. e. nó sẽ là chữ số cuối cùng của số tạm thời. Cộng tổng cur_dig**n1. Cập nhật giá trị của temp thành temp //10.

Công thức tìm số Amstrong là gì?

= pow [a, n] + pow [b, n] + pow [c, n] + pow [d, n] + pow [e, n] + . 0, 1, 153, 370, 371, 1634, v.v. 27 + 343 + 0 = 370, tức là bằng số đã cho; . 1 + 1296 + 81 + 256 = 1634, tức là bằng số đã cho; . ……… For example : 0, 1, 153, 370, 371, 1634 etc. 27 + 343 + 0 = 370, which is equal to the given number; hence it is an Armstrong number. 1 + 1296 + 81 + 256 = 1634, which is equal to the given number; hence it is an Armstrong number.

Chủ Đề