この質問のフォローアップとして:
Apple の複素数サポートを使用して電卓アプリを実装している最中に、そのサポートを使用して計算すると次のようになることに気付きました。
(1+i)^2=1.2246063538223773e-16 + 2i
もちろん、正しい単位は (1+i)^2=2i です。これは、より一般的な現象の具体的な例です。丸め誤差は、ゼロであるはずの部分をわずかにゼロ以外の値に丸める場合、非常に厄介です。
これに対処する方法についての提案はありますか? 他の方法で複素数の整数べき乗を実装することもできますが、一般的な問題は残り、私のソリューション自体が他の矛盾を引き起こす可能性があります。