タグ

技術と誤差に関するmohnoのブックマーク (2)

  • 「0.1+0.2≠0.3」を説明できないエンジニアがいるらしい - Qiita

    この記事はNuco Advent Calendar 2023の4日目の記事です。 弊社では、経験の有無を問わず、社員やインターン生の採用を行っています。 興味のある方はこちらをご覧ください。 はじめに 後輩に 「なぜ0.1+0.2≠0.3になるんですか?」 と聞かれて答えられますか? コンピュータの計算では「0.1+0.2」は「0.3」になりません。 これを理解していないと予期せぬ重大なバグを生み出す可能性があります。 分からない方、どうぞ安心してください。 この記事を読んだ全員が「0.1+0.2≠0.3」を理解できるように分かりやすく説明していきます。 コンピュータが計算を間違う理由 まず、そもそも「0.1+0.2=0.3」で正しい!「0.1+0.2≠0.3」なんてあり得ない! という方のために、プログラミング言語のフォーマット処理を経ない、コンピュータの計算結果を見てみます。

    「0.1+0.2≠0.3」を説明できないエンジニアがいるらしい - Qiita
    mohno
    mohno 2023/12/05
    煽り気味かもしれないが0.1+0.2がいつも0.3になるとは言っていないのでは。/本文はやたら長いけど。/いやマジで教える側でも「小数第2位で四捨五入」みたいな問題を出す人がいるんよ。decimal使うわけでもないのに。
  • 数値計算の研究をしている学生が"数値計算に潜むとんでもないリスク"について話してみる - Qiita

    筆者は「精度保証付き数値計算」という分野で研究をしている大学院生です. 「数値計算は分かるけど」「精度保証付き数値計算?ナニソレ?」という方がほとんどだと思います. 「精度保証付き数値計算」の研究自体は30年ほど前から盛んに行われていますが,世間に浸透しているとは言えない状況です. 自分の研究分野が世間に知られていないのは何か少し寂しい感じがするので「精度保証付き数値計算」を少しでも広めるべく記事を投稿することにしました.(シリーズ化するかも知れません) 日は「精度保証付き数値計算」というワードだけでも覚えていただければ幸いです. 今回は"数値計算に潜むとんでもないリスク"に関してカジュアルにお話します. そして筆者の研究分野である「精度保証付き数値計算」の必要性を知ってもらえればなと思います. この記事を読み終える頃には計算機を信頼できなくなっているかも知れません(笑) ※不安を煽るこ

    数値計算の研究をしている学生が"数値計算に潜むとんでもないリスク"について話してみる - Qiita
    mohno
    mohno 2019/12/26
    これくらいは数値計算をやる人なら当然知っておいてほしいところではあるけれど(2次方程式の場合、「b*b」と「4ac」で桁数の差が大きすぎて引算するには“有効桁数”が全然足りてない)
  • 1