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

เฉพาะที่ใกล้ที่สุดที่น้อยกว่าจำนวนที่กำหนด n C++


เราได้รับตัวเลข n เราต้องหาจำนวนเฉพาะที่ใกล้ที่สุดที่น้อยกว่า n เราสามารถหาเลขได้ง่ายถ้าเราเริ่มตรวจสอบจาก n - 1 มาดูตัวอย่างกัน

ป้อนข้อมูล

10

ผลผลิต

7

อัลกอริทึม

  • เริ่มต้นหมายเลข n.
  • เขียนลูปที่วนซ้ำจาก n - 1 ถึง 1
    • คืนค่าจำนวนเฉพาะตัวแรกที่คุณพบ
  • คืนค่า -1 หากคุณไม่พบจำนวนเฉพาะที่น้อยกว่าที่กำหนด n

การนำไปใช้

ต่อไปนี้เป็นการนำอัลกอริธึมข้างต้นไปใช้ใน C++

#include <bits/stdc++.h>
using namespace std;
bool isPrime(int n) {
   if (n == 2) {
      return true;
   }
   for (int i = 2; i <= ceil(sqrt(n)); i++) {
      if (n % i == 0) {
         return false;
      }
   }
   return true;
}
int getNearestPrimeNumber(int n) {
   for (int i = n - 1; i > 1; i--) {
      if (isPrime(i)) {
         return i;
      }
   }
   return -1;
}
int main() {
   int n = 20;
   cout << getNearestPrimeNumber(n) << endl;
   return 0;
}

ผลลัพธ์

หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

19