本文へスキップ

技術士試験(情報工学部門)・情報技術者試験。ファーストマクロ。


Since 2016.4.19

平成21年度 技術士第一次試験問題【専門科目】

W−2

C言語を用いて実験データ処理用のプログラムを作成する。いま、double型変数 a、b に2つの測定データが格納されている。a、b の値はともに有効桁数が7桁あり、それぞれ次の範囲内にあることがわかっている。
 3 < a < 3.0001  2.9999 < b < 3
@〜Dの演算を行ったときに、もとのa、b と比べて最も顕著に演算結果の有効桁数が失われるものを選べ。

@ a + b         A a - b

B a * b         C a / b

D sqrt (a*a + b*b)


類題

H29 V-7


正解

A


解説

例えば a = 3.000001、b = 2.999999 として計算すると

@ a + b = 6.000000
A a - b = 0.000002
B a * b = 8.999999
C a / b = 1.000001
D sqrt (a * a + b * b) = 4.242641

A以外は有効桁数が7桁のままであるが、Aは有効桁が1桁となる。このように有効桁数が極端に失われることを桁落ちという。

W−1 目次 W−3