• 締切済み

複素数のべき乗について

エクセルでi(虚数)の1乗(=impower("i",1))をすると、 6.72256846544206E-015+i の解が得られます。 なぜこうなるのですか?

みんなの回答

  • ryuta_mo
  • ベストアンサー率30% (109/354)
回答No.2

PC内部では数値を2進法で表しますが、二進法で0.1は無限小数となり誤差が発生します 2進法で0.1は0.0 0011 0011 0011 ・・・・となり、 0.1+0.1+0.1+・・・+0.1は 0.11111111111111・・・となるので有効桁数に丸めたときに誤差が発生します。 10進で1/3*3を電卓で計算しても0.999・・・となって誤差が発生するのと同じことです。

  • jmh
  • ベストアンサー率23% (71/304)
回答No.1

誤差じゃないでしょうか? 例えば、私のエクセル2千SP3では、  =((0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1)-1) が  -1.11022E-16 (-1.11022×10^(-16))などと表示されます。

関連するQ&A