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

Mersenne Prime ใน JavaScript


ในวิชาคณิตศาสตร์ เฉพาะ Mersenne เป็นตัวเลขที่สามารถเขียนได้ในรูปแบบ M(n) =2^n − 1 สำหรับจำนวนเต็ม n และที่จริงแล้วเป็นจำนวนเฉพาะ

ตัวอย่างเช่น − Mersenne Primes สี่ตัวแรกคือ 3, 7, 31 และ 127

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้ตัวเลขและตรวจสอบว่าเป็น aMersenne prime หรือไม่ มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน

ตัวอย่าง

const isPrime = num => {
   let i = 2;
   while(i <= num / 2){
      if(num % i++ === 0){
         return false;
      };
   };
   return true;
}
const mersennePrime = num => {
   if(!isPrime(num)){
      return false;
   };
   let i = 0, n = num+1;
   while(n !== 1){
      if(n % 2 !== 0){
         return false;
      };
      n /= 2;
   };
   return true;
};
console.log(mersennePrime(31));
console.log(mersennePrime(127));
console.log(mersennePrime(3));
console.log(mersennePrime(37));
console.log(mersennePrime(87));
console.log(mersennePrime(7));

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็น -

true
true
true
false
false
true