Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript 나르시시스트 번호

<시간/>

자기애적 숫자

나르시스트적인 숫자 주어진 수의 밑수 b는 각 자릿수의 거듭제곱으로 거듭제곱된 고유한 자릿수의 합인 숫자입니다.

예를 들어 -

153 =1^3 + 5^3 + 3^3 =1+125+27 =153

마찬가지로

1 =1^1 =1

접근

먼저 while 루프를 사용하여 자릿수를 계산합니다. 그런 다음 또 다른 while 루프를 사용하여 숫자의 마지막 숫자를 선택하고 변수 합계에 (카운트) 제곱을 더합니다. 루프 후에 합이 숫자와 같은지 여부를 확인하는 부울 값을 반환합니다.

이 접근 방식의 코드는 -

예시

const isNarcissistic =(num) => { let m =1, count =0; 동안(숫자 / m> 1){ m *=10; 카운트++; }; 합계 =0, 온도 =숫자로 둡니다. while(temp){ 합계 +=Math.pow(온도 % 10, 개수); 온도 =Math.floor(온도 / 10); }; 반환 합계 ===num;};console.log(isNarcissistic(153));console.log(isNarcissistic(1634));console.log(isNarcissistic(1433));console.log(isNarcissistic(342)); 

출력

콘솔의 출력은 다음과 같습니다. -

truetruefalse