過敏

過敏

簡單

說明

給定一個人的過敏分數,判斷他們是否對某個項目過敏,以及他們完整的過敏清單。

過敏測試會產生一個數字分數,這個分數包含了受測者所有過敏項目(他們接受測試的項目)的資訊。

受測試的項目(及其數值)如下:

  • eggs (1)
  • peanuts (2)
  • shellfish (4)
  • strawberries (8)
  • tomatoes (16)
  • chocolate (32)
  • pollen (64)
  • cats (128)

所以如果 Tom 對 peanuts 和 chocolate 過敏,他的分數就會是 34。

現在,只給定 34 這個分數,你的程式應該就能回答:

  • Tom 是否對上面列出的任何一種過敏原過敏。
  • Tom 過敏的所有過敏原。

注意:某個分數可能包含未列於上方的過敏原(也就是分數為 256、512、1024 等等的過敏原)。你的程式應該忽略分數中的這些部分。舉例來說,如果過敏分數是 257,你的程式應該只回報 eggs (1) 這項過敏。

透過 GitHub 編輯 連結會在新視窗或分頁中開啟
Delphi Pascal Exercism

準備好開始 過敏 了嗎?

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

深入探索 過敏!

我們會探索位元位移、位元比較以及其他二進位數字的概念!我們也會看看一個使用模式比對的解法,以及在 Erlang 中用遞迴的有趣做法。