Articles

자바에서 매직 넘버를 찾는 방법

이 글에서,우리는 자바를 사용하여Magic Number를 찾기 위해 배울 것입니다.

먼저 매직 넘버가 무엇인지 이해합시다.

매직 넘버 란 무엇입니까?

일련의 단계 후에 그리고 각 단계 번호에서 결과로 1 을 떠나는 숫자는 그 숫자의 합계로 대체됩니다. 예를 들어,163 이 매직 넘버인지 여부를 확인하면 단계 시퀀스는 다음과 같습니다

Step 1: 1+6+3 = 10 // 각 숫자의 제곱의 합계

Step 2: 1+0 = 1 (매직 넘버)

매직 넘버를 계산하려면 재귀 적 접근법이나 간단한 속기 논리를 사용하는 두 가지 접근법이 있습니다. 예제를 보자.

매직 넘버 알고리즘

Step 1: 제곱 합을 저장하려면sum,값을 유지하려면number의 두 변수를 사용하십시오.

Step 2:number가 0 보다 크거나sum가 9 보다 클 때까지 반복합니다.

Step 3:number가 0 이면 숫자를 숫자의sum로 바꾸고sum=0 으로 설정합니다.

Step 4: number에 있는 각 숫자의sum를 계산하고 변수sum에 추가합니다.

Step 5:결과sum가 1 이면number는 매직 넘버입니다.

Step 6:그렇지 않으면number는 매직 넘버가 아닙니다.

매직 넘버를 찾는 예

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

공용 클래스 메인{
공용 정적 무효 이 문제를 해결하기 위해 다음과 같은 방법을 사용할 수 있습니다.:::::::::::::::> 9)
{
경우(번호== 0)
{
숫자=합계;
합계= 0;
}
합계+=숫자%10;
숫자/= 10;
}
// 합계=1 인 경우 매직 넘버
(합계== 1) {
체계.밖으로.”그것은 마법의 숫자입니다”);
}다른{
시스템.밖으로.”그것은 마법의 숫자가 아닙니다”);
}
}
}

출력:

매직 넘버

매직 넘버를 찾는 또 다른 예

매직 넘버를 찾는 또 다른 방법이 있습니다. 이 방법에서는 숫자를 9 로 나눈 후 매직 넘버를 얻을 수 있습니다. 이 매직 넘버를 확인하는 바로 가기 방법입니다. 숫자를 9 로 나눈 후 나머지 1 을 얻으면 그 숫자는 마법의 숫자입니다. 그것은 숫자가 9 로 나눌 수 있다면,그 모든 숫자의 합도 9 로 나눌 수 있다고 9 의 가분성 규칙의 개념을 기반으로합니다. 원래 숫자에 1 을 추가하면 궁극적 인 값이 1 만큼 증가하여 10 이되고 궁극적 인 합계는 1 이되어 숫자를 마법의 숫자로 만듭니다. 아래 예를 참조하십시오.

1
2
3
4
5
6
7
8
9
10
11
12
13

이 예제에서는 다음과 같은 방법을 사용할 수 있습니다.:::::::::::::% 9 == 1) {
체계.밖으로.”그것은 마법의 숫자입니다”);
}다른{
시스템.밖으로.”그것은 마법의 숫자가 아닙니다”);
}
}
}

출력

매직 넘버

이 아니라 자바의 매직 넘버에 관한 것입니다.

답글 남기기

이메일 주소는 공개되지 않습니다.