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

วิธีรับผลคูณของจำนวนเต็มสองจำนวนโดยไม่ใช้ * JavaScript


เราจำเป็นต้องเขียนฟังก์ชันที่ใช้ตัวเลขสองตัวและส่งคืนผลิตภัณฑ์โดยไม่ต้องใช้ตัวดำเนินการ (*)

เคล็ดลับที่ 1:การใช้ตัวดำเนินการแบ่งสองครั้ง

เรารู้ว่าการคูณและการหารเป็นเพียงส่วนผกผันของกันและกัน ดังนั้นหากเราหารจำนวนด้วยอินเวอร์สของเลขอื่น มันจะเหมือนกับการคูณตัวเลขทั้งสองนั้นไม่ใช่หรือ

มาดูรหัสสำหรับสิ่งนี้กัน −

const a = 20, b = 45;
const product = (a, b) => a / (1 / b);
console.log(product(a, b));

เคล็ดลับที่ 2:การใช้ลอการิทึม

มาดูคุณสมบัติของลอการิทึมกันก่อน −

log(a) + log(b) = log(ab)

ลองใช้คุณสมบัติของลอการิทึมนี้เพื่อประโยชน์ของเรา รหัสสำหรับสิ่งนี้จะเป็น −

ตัวอย่าง

const a = 20, b = 45;
const product = (a, b) => {
   const logProduct = Math.log(a) + Math.log(b);
   return Math.round(Math.exp(logProduct));
};
console.log(product(a, b));

ผลลัพธ์

ผลลัพธ์ในคอนโซลสำหรับทั้งคู่จะเป็น −

900