数学を支配できれば簡単に解ける問題に遭遇しました。ですから、誰かが私を正しい方向に向けることができれば、この貢献に感謝します。
レシピで、16 カップごとに X の数 (レモンの数など) を追加したいと考えています。なので、5杯飲むときはレモン1個だけ。17杯飲むときはレモン2個分。32 カップになったら、3 番目のレモンを追加し、16 の倍数ごとに追加します。
これを解決する最も簡単な方法は何ですか?
このために数学を支配する必要はありません。
int lemons = cups / 16 + 1; //the +1 there because apparently you want to start
//with one cup
レモンとカップには直接的な関係があるので、次のように言えます。
lemons = ( cups / 16 ) + 1;
または、必要に応じて、次のように言うこともできます。
lemons = ( cups >> 4 ) + 1;
(a) 16 は明らかに正確に 2 の累乗であり、(b) レモンとカップが整数である場合にのみ機能します。この種の最適化が必要になる可能性は低く、前者の方が適切であり、おそらくより明確です。