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

ค้นหาจำนวนธรรมชาติตัวแรกที่แฟคทอเรียลหารด้วย x ลงตัวใน C++


เราต้องหาจำนวนธรรมชาติตัวแรกที่แฟคทอเรียลหารด้วย x ลงตัว x ถูกกำหนดโดยผู้ใช้ ดังนั้นหาก x =16 ผลลัพธ์จะเป็น 6 เป็น 6! mod 16 =0 เราจะใช้วิธีการทั่วไปในการแก้ปัญหานี้ นับซ้ำ 1!, 2!, …. น! และตรวจสอบการหารด้วย x หากโมดูลัสเป็น 0 ให้หยุดและส่งคืนตัวเลข

ตัวอย่าง

#include<iostream>
using namespace std;
int getNumber(int x) {
   int fact = 1;
   int i = 0;
   while(fact % x != 0){
      i++;
      fact = fact * i;
   }
   return i;
}
int main() {
   int x = 16;
   cout << "Minimum value of N is: " << getNumber(x);
}

ผลลัพธ์

Minimum value of N is: 6