Vấn đề
Chúng tôi được yêu cầu viết một hàm JavaScript có hai số, m và n, làm đối số thứ nhất và thứ hai.
Hàm của chúng ta phải đếm số phép toán tối thiểu cần thiết để đạt được n từ m, chỉ sử dụng hai phép toán này -
-
Đôi - Nhân số trên màn hình với 2 hoặc;
-
Giảm dần - Trừ 1 cho số trên màn hình.
Ví dụ:nếu đầu vào của hàm là -
const m = 5; const n = 8;
Sau đó, kết quả đầu ra phải là -
const output = 8;
Giải thích đầu ra:
Bởi vì các hoạt động -
5 → 4 → 8
Ví dụ
Mã cho điều này sẽ là -
const m = 5;
const n = 8;
const findOperations = (m, n) => {
let res = 0;
while(n > m){
if(n % 2 === 0){
n /= 2;
}else{
n += 1;
};
res += 1;
};
return res + m - n;
};
console.log(findOperations(m, n)); Đầu ra
Và đầu ra trong bảng điều khiển sẽ là -
2