Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

สมมติฐานของเบอร์ทรานด์ (Bertrand's Postulate) ใน C++


สมมติฐานของเบอร์ทรานด์ (Bertrand's Postulate) เป็นข้อความทางคณิตศาสตร์ ที่ระบุว่า สำหรับทุกจำนวน n > 3 จะมีจำนวนเฉพาะ p อยู่ระหว่าง n และ 2n-2 เสมอ

สูตรของ Bertrand's Postulate

n < p < 2n - 2

โดยที่ n เป็นจำนวนที่ n > 3 และ p เป็นจำนวนเฉพาะ

จำนวนเฉพาะ (Prime number) - จำนวนที่มีตัวประกอบเพียง 1 และตัวมันเองเท่านั้น

รูปแบบที่น้อยกว่าข้อจำกัดของสมมติฐานเบอร์ทรานด์คือ

n < p < 2n, สำหรับทุก n > 1

ตัวอย่าง

จำนวน

5

ผลลัพธ์

7

คำอธิบาย

จำนวนเฉพาะในช่วง 5 ถึง 2*5 คือ จำนวนเฉพาะระหว่าง 5 ถึง 10

จำนวน

11

ผลลัพธ์

13, 17, 19

คำอธิบาย

จำนวนเฉพาะในช่วง 11 ถึง 2*11 คือ จำนวนเฉพาะระหว่าง 11 ถึง 22

โปรแกรมหาจำนวนเฉพาะโดยใช้สมมติฐานของเบอร์ทรานด์

// โปรแกรมหาจำนวนเฉพาะโดยใช้สมมติฐานของเบอร์ทรานด์

ตัวอย่าง

#include <iostream>
using namespace std;

void printPrime(int n) {
    int flag = 0;
    for (int i = 2; i * i <= n; i++)
        if (n % i == 0) // i เป็นตัวประกอบของ n
            flag++;
    if (flag == 0)
        cout << n << " ";
}

int main() {
    int n = 22;
    cout << "Prime numbers in range (" << n << ", " << 2 * n << ") :\t";
    for (int p = n + 1; p < 2 * n - 2; p++)
        printPrime(p);
    return 0;
}

ผลลัพธ์

Prime numbers in range (22, 44) : 23 29 31 37 41