반응형
1. 팩토리얼이란?
팩토리얼(factorial)이란, 어떤 숫자 n이 주어졌을 때, 1부터 n까지의 모든 숫자를 곱한 값입니다. 팩토리얼은 보통 n!로 표시되며, 예를 들어 5!는 5 * 4 * 3 * 2 * 1 = 120입니다.
2. 자바 프로그램 구조
입력: 사용자로부터 숫자를 입력받습니다.
처리: 입력받은 숫자의 팩토리얼을 계산합니다.
출력: 계산된 결과를 화면에 출력합니다.
이제 코드를 한 줄씩 살펴보겠습니다.
3. 코드
import java.util.Scanner;
public class Factorial {
public static void main(String[] args) {
// 1. 스캐너 객체를 사용해 사용자로부터 숫자를 입력받습니다.
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a number: "); // 사용자에게 숫자를 입력하라는 메시지를 출력
int number = scanner.nextInt(); // 사용자가 입력한 숫자를 변수 number에 저장
// 2. 팩토리얼을 계산하는 부분
long factorial = 1; // 결과를 저장할 변수. 초기값은 1로 설정
for (int i = 1; i <= number; i++) {
factorial *= i; // factorial = factorial * i
}
// 3. 계산된 팩토리얼을 출력
System.out.println("Factorial of " + number + " is: " + factorial);
// 4. 스캐너 닫기
scanner.close();
}
}
4. 코드 설명
- import java.util.Scanner;
- Scanner 클래스를 사용하여 사용자의 입력을 받기 위해 필요한 코드입니다.
- Scanner scanner = new Scanner(System.in);
- Scanner 객체를 생성하여 사용자로부터 데이터를 입력받는 도구로 사용합니다.
- int number = scanner.nextInt();
- 사용자가 입력한 정수를 읽어서 변수 number에 저장합니다.
- long factorial = 1;
- 팩토리얼 값을 저장하기 위한 변수를 선언합니다. 팩토리얼은 곱셈이므로 1로 시작합니다.
- for (int i = 1; i <= number; i++) { factorial *= i; }
- for문은 1부터 입력된 number까지 반복하면서 각 숫자를 차례로 곱합니다.
- System.out.println("Factorial of " + number + " is: " + factorial);
- 계산된 팩토리얼 값을 출력합니다.
5. 예시 실행
사용자가 5를 입력했을 때:
Enter a number: 5
Factorial of 5 is: 120
팁:
- 팩토리얼 값은 금방 커지기 때문에, 큰 숫자에 대한 팩토리얼을 계산할 때는 long 타입을 사용하는 것이 안전합니다. int 타입은 최대 범위를 넘어서면 에러가 날 수 있습니다.
반응형
'자바(Java)' 카테고리의 다른 글
피보나치 수열을 출력하는 Java 프로그램 (0) | 2024.11.07 |
---|---|
자바(Java)로 숫자를 뒤집는 프로그램을 작성하는 방법 (1) | 2024.10.15 |
Java로 주어진 숫자가 회문(Palindrome)인지 확인하는 프로그램 (0) | 2024.10.14 |
Java로 Armstrong Number를 구하는 프로그램 (0) | 2024.10.14 |
Java 프로그램으로 숫자의 각 자릿수를 더하는 방법 (0) | 2024.10.14 |