0

整数変数、ミリボルト単位の電圧があります。

signed int voltage_mv = 134; //134mV

2 セグメント ディスプレイを使用しており、100 分の 1 ボルトを表示したいと考えています。

1回の操作でミリボルトを100分の1ボルトに変換するにはどうすればよいですか? IF文なし、機能なし?

134 => 13
135 => 14
4

2 に答える 2

9

単純な丸めはどうですか:

int millivoltToDisplay (int millivolts)
{
  return (millivolts+5)/10;
}

(わかりやすくするために関数として記述)

于 2010-11-03T08:33:45.410 に答える
4

完全を期すために、分母が奇数の場合は、代わりに次のようにします。

return (millivolts+denominator/2)/denominator;

あなたはただ持つことができます

return (2*millivolts+denominator)/(2*denominator);

正しい丸めを取得します。

于 2010-11-03T18:11:07.270 に答える