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

ตรวจสอบว่าตัวเลขหนึ่งเป็นกำลังของอีกตัวหนึ่งใน JavaScript

เราต้องเขียนฟังก์ชัน JavaScript ที่รับตัวเลขสองตัว สมมติว่า m และ n ฟังก์ชันควรตรวจสอบว่า m เป็นกำลังของ n หรือไม่ ถ้าใช่ ควรคืนค่า true false ถ้าไม่ใช่

เช่น:

m = 8, n = 2 should return true
m = 100, n = 10 should return true
m = .01, n = 10 should return true
m = 21, n = 3 should return false

ตัวอย่าง

const isPower = (m, n) => {
  let sign = m < 1;
  if (!m) {
    return false;
  };
  while (m !== 1) {
    if (sign) {
      m *= n;
    }
    else {
      m /= n;
    }
    if (sign ? m > 1 : m < 1) {
      return false;
    }
  };
  return true;
}
console.log(isPower(0.01, 10));
console.log(isPower(1000, 10));
console.log(isPower(1001, 10));
console.log(isPower(8, 2));
console.log(isPower(0.125, 2));

ผลลัพธ์

สิ่งนี้จะให้ผลลัพธ์ดังนี้:

true true false true true