跳至主要内容

科技奇蹟

· 閱讀時間約 2 分鐘

通常,跑步機上面的心率計,需要你把雙手握在上面。但今天在健身房,我目睹了現代科技的奇蹟:這台跑步機居然可以隔空讀取我的心跳!

更神奇的是,當我站在兩側休息,並且拍下這張照片時,它顯示我的心跳高達 130。(事實上只有 107)

這讓我不禁懷疑跑步機上面的心率計到底是真的,還是只是一個簡單的算法加上一點點隨機數字產生器?搞不好它裡面其實是這樣運作的:

function generateHeartRate(speed, incline) {
// 先設定一個基礎心率
const baseRate = 60;

// 根據速度和坡度增加一些數字
const speedFactor = speed * 5; // 每 1 km/h 增加 5 bpm
const inclineFactor = incline * 5; // 每 1% 坡度增加 5 bpm

// 加入一些隨機變化,範圍 -5 到 +5,讓你以為真的有在即時測量
const randomFactor = Math.floor(Math.random() * 11) - 5;

// 把數字加一加,得出最終心率
let heartRate = Math.round(baseRate + speedFactor + inclineFactor + randomFactor);

// 確保心率在合理範圍內(例如 60-200)
heartRate = Math.max(60, Math.min(200, heartRate));

// 回傳心率
return heartRate;
}

每一秒鐘呼叫以上的 generateHeartRate() 一次,你就有一個如假亂真的心率計了!

下次去健身房,把一根香蕉在綁在心率計上面然後啟動跑步機;如果它的數字開始跳動……恭喜你,你發現了世界上第一個有心跳的水果!