飛鏢

飛鏢

簡單

說明

計算飛鏢遊戲中單次投擲的得分。

飛鏢是一種玩家將飛鏢射向標靶的遊戲。

在我們這個特定的遊戲中,標靶會根據飛鏢落點給予 4 種不同的分數:

我們的飛鏢計分板,數值從完全脫靶到紅心

  • 如果飛鏢落在標靶外,玩家得不到分數(0 分)。
  • 如果飛鏢落在標靶的外圓,玩家得 1 分。
  • 如果飛鏢落在標靶的中圓,玩家得 5 分。
  • 如果飛鏢落在標靶的內圓,玩家得 10 分。

外圓的半徑是 10 個單位(這相當於整個標靶的總半徑),中圓的半徑是 5 個單位,內圓的半徑是 1。 當然,它們都以同一個點為圓心,也就是說,這些圓是以座標 (0, 0) 定義的同心圓。

給定標靶上的一點(以其笛卡兒座標x和y定義,其中x和y是實數),計算飛鏢落在該點時的正確得分。

致謝

計分板圖片由 habere-et-dispertire 使用 Inkscape 製作。

暫存器

暫存器 用途 型別 說明
$a0 輸入 整數 x
$a1 輸入 整數 y
$v0 輸出 整數 得分
$t0-9 暫存 任意 用於暫存資料

出處

靈感來自阿根廷教授 Della Paolera 所設計的練習。
透過 GitHub 編輯 連結會在新視窗或分頁中開啟
MIPS Assembly Exercism

準備好開始 飛鏢 了嗎?

註冊 Exercism,透過 70 個練習 和真人引導來學習並精通 MIPS Assembly,全部免費。