숫자 n이 있다고 가정합니다. 범위의 모든 숫자가 합성이고 범위의 길이가 n인 양의 정수 범위를 찾아야 합니다. 범위가 두 개 이상인 경우 하나의 범위를 인쇄합니다. 합성수는 1과 자기 자신 이외의 약수가 하나 이상 있는 수입니다.
범위의 길이가 n이므로 첫 번째 숫자가 a이면 다른 숫자는 a + 1, a + 2, …, a + n – 1이며 모두 합성이어야 합니다. 여기서 x가 양의 정수인 경우 x는 2, 3, 4, …, p – 1의 인수를 갖습니다. 그래서 p! + 나는 요인 i를 가지고 있으므로 p! + 나는 합성이어야 한다. 피! + 2, 피! + 3, ... 피! + p – 1은 모두 합성입니다. 따라서 범위는 [p! + 2, 피! + p – 1]
예시
#include<iostream>
using namespace std;
int fact (int n) {
if (n == 0)
return 1;
return n * fact(n-1);
}
void showRange(int n) {
int a = fact(n + 2) + 2;
int b = a + n - 1;
cout << "[" << a << ", " << b << "]";
}
int main() {
int n = 3 ;
showRange(n);
} 출력
[122, 124]