สมมติว่าเรามีตัวเลข n เราต้องหาพิสัยของจำนวนเต็มบวก โดยที่ตัวเลขทั้งหมดในช่วงนั้นประกอบกัน และความยาวของช่วงคือ n หากมีมากกว่าหนึ่งช่วง ให้พิมพ์ช่วงใดช่วงหนึ่ง จำนวนประกอบเป็นตัวเลขที่มีตัวหารอย่างน้อยหนึ่งตัวนอกเหนือจาก 1 และตัวมันเอง
เนื่องจากความยาวของช่วงคือ n ดังนั้นหากตัวเลขแรกคือ a ดังนั้นตัวเลขอื่นๆ ก็คือ a + 1, a + 2, …, a + n – 1 ทั้งหมดควรประกอบเข้าด้วยกัน ถ้าเราเห็นว่า x! โดยที่ 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]