English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 가이드

Java 조건문

Java 배열

Java object-oriented(I)

Java object-oriented(II)

Java object-oriented(III)

Java 예외 처리

Java 리스트(List)

Java Queue(큐)

Java Map集合

Java Set集合

Java 입력출력(I/O)

Java Reader/Writer

Java 다른 주제

Java 함수로 범위 내의 아르무스트롯 수 표시

Java 예제 전체

이 프로그램에서는 Java에서 함수를 사용하여 주어진 인터벌(저고와 높이) 사이의 모든 아르무스트롯 수를 표시하는 방법을 배웁니다

두 정수 사이의 모든 아르무스트롯 수를 찾기 위해 함수 checkArmstrong()를 생성합니다. 이 함수는아르무스트롯 수 여부 확인

예제: 두 정수 사이의 아르무스트롯 수

public class Armstrong {
    public static void main(String[] args) {
        int low = 999, high = 99999;
        for(int number = low + 1; number < high; ++number) {
            if (checkArmstrong(number))
                System.out.print(number + " ");
        }
    }
    public static boolean checkArmstrong(int num) {
        int digits = 0;
        int result = 0;
        int originalNumber = num;
        //digits 계산
        while (originalNumber != 0) {
            originalNumber /= 10;
            ++digits;
        }
        originalNumber = num;
        //결과는 그 숫자의 n승의 합을 포함합니다
        while (originalNumber != 0) {
            int remainder = originalNumber % 10;
            result += Math.pow(remainder, digits);
            originalNumber /= 10;
        }
        if (result == num)
            return true;
        return false;
    }
}

이 프로그램을 실행할 때, 출력은 다음과 같습니다:

1634 8208 9474 54748 92727 93084

위 프로그램에서 checkArmstrong() 함수를 생성했습니다. 이 함수는 파라미터 num을 받아布尔 값을 반환합니다.

숫자가 Armstrong 숫자면 true를 반환합니다. 그렇지 않으면 false를 반환합니다.

main() 함수에서 반환 값을 기준으로 숫자를 출력합니다.

Java 예제 전체