강한 숫자는 모든 자릿수' 계승의 합이 숫자 'n'과 같은 숫자입니다. 계승은 해당 숫자를 포함하여 해당 숫자 아래에 있는 모든 숫자의 곱을 찾을 때를 의미하며 !로 표시됩니다. (느낌표), 예:5! =5x4x3x2x1 =120. 어떤 숫자가 강한 숫자인지 확인해야 하는 경우 나머지/모듈러스 연산자와 'while' 루프를 사용할 수 있습니다.
아래는 동일한 데모입니다 -
예시
my_sum=0 my_num = 296 print("The number is") print(my_num) temp = my_num while(my_num): i=1 fact=1 remainder = my_num%10 while(i<=remainder): fact=fact*i i=i+1 my_sum = my_sum+fact my_num=my_num//10 if(my_sum == temp): print("The number is a strong number") else: print("The number is not a strong number")
출력
The number is 296 The number is not a strong number
설명
-
합계는 0으로 초기화됩니다.
-
번호가 정의되어 콘솔에 표시됩니다.
-
숫자는 임시 변수로 정의됩니다.
-
나머지가 결정되는 곳에 while 루프가 사용됩니다.
-
while 루프는 반복자가 나머지보다 작거나 같은지 확인하기 위해 다시 사용됩니다.
-
적으면 'fact' 변수에 반복자를 곱합니다.
-
그런 다음 1씩 증가합니다.
-
합계 값이 'fact' 변수에 추가됩니다.
-
'temp' 변수와 합이 같으면 문자열 숫자로 간주합니다.