English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이 예제에서는 n자릿수 정수가 아름스턴드 수인지 확인하는 방법을 배웁니다.
이 예제를 이해하려면 다음을 이해해야 합니다:파이썬 프로그래밍주제:
정수가 아름스턴드 수라고 불리는 것은, n이
abcd... = an + bn + cn + dn + ...
그렇다면3자릿수 아름스턴드 수는 각 자릿수의立方 합이 해당 숫자와 같습니다. 예를 들어:
153 = 1*1*1 + 5*5*5 + 3*3*3 // 153아름스턴드 수입니다.
# 아름스턴드 수를 확인하는 파이썬 프로그램 # 사용자 입력 수락 num = int(input("숫자를 입력하세요: ")) # sum 초기화 sum = 0 # 각 자릿수의立方的 합을 구합니다 temp = num while temp > 0: digit = temp % 10 sum += digit ** 3 temp //= 10 # 결과 표시 if num == sum: print(num, "아름스턴드 수입니다") else: print(num, "아름스턴드 수가 아닙니다")
출력1
숫자를 입력하세요: 456 456 아름스턴드 수가 아닙니다
출력2
숫자를 입력하세요: 407 407 아름스턴드 수
여기서는 사용자로부터 숫자를 입력받아 그가 아름스턴드 수인지 확인합니다.
각 자릿수의立方 합을 계산해야 합니다. 따라서 총 합을 0으로 초기화하고 사용합니다모듈러 연산자(%)) 각 자릿수를 얻습니다. 숫자를 나눕니다10나머지는 해당 숫자의 마지막 자릿수입니다. 다중 데이터 셋을 얻기 위해 지수 연산자를 사용합니다.
마지막으로, 총 합과 원래 숫자를 비교하여 결론을 내리겠습니다. 만약 그들이 같다면, 아름스턴드 수입니다.
num = 1634 # num 변수를 문자열로 변경 # 길이(자릿수) 계산 order = len(str(num)) # sum 초기화 sum = 0 # 각 자릿수의立方的 합을 구합니다 temp = num while temp > 0: digit = temp % 10 sum += digit ** order temp //= 10 # 결과 표시 if num == sum: print(num, "아름스턴드 수입니다") else: print(num, "아름스턴드 수가 아닙니다")
원본 코드에서 num의 값을 변경하고 다시 실행하여 테스트할 수 있습니다.