アフィリエイト広告を利用しています
G-QVESCNWRVH

2024年05月08日

四捨五入で失敗したー

●バグったー

5月7日 連休明け
現場の方から、どうも数値が合わない・・・という連絡があった
現象を確認すると

四捨五入が上手く行っていないようだった
●四捨五入とはなんぞや?

それは、もう読んで字のごとく(笑)
ある桁が、4以下なら切り捨て5以上なら切り上げをすること
ですが・・・落とし穴がありました。

たとえば、3.5を整数にしようとしたら、四捨五入すると 4になります。
3.8を四捨五入しても4、 4.2を四捨五入しても4ですね。
これを数学的に実現しようとすると、0.5を足して整数化すればよい・・・と考えました
●演算方法

実際に・・・
3.5+0.5 = 4.0 ⇒ 整数化すると 4
3.8+0.5 = 4.3 ⇒ 整数化すると 4
4.2+0.5 = 4.7 ⇒ 整数化すると 4
目論み通りですね

でも、落とし穴と言うのは、この演算方法は、マイナスの値には通用しないんです。
−3.5+0.5 = −3.0 ⇒ 整数化すると −3 本当は −4であってほしい
−3.8+0.5 = −3.3 ⇒ 整数化すると −3 これも −4であってほしい
こんな感じです

どうすればいいか? 答えは簡単なんですが・・・
●RPG4ではどうするか

本当は、四捨五入をするための拡張命令を使用すればよかったんですが・・・
それを知らなかったので、上記のようなしちめんどくさいことをしてしまい
結局、バグを出してしまいました。

RPG4での具体的な命令はというと、 EVAL 命令に (H) を付けて
EVAL(H) とすればよかったんです。
あ〜〜〜あ!
●被害は些少で済んだ

このバグによる被害は些少で済んだんですが
プログラム改修に1時間程度かかってしまいました
ほんとに、もう・・・恥ずかしい青ざめ

穴があったら入りたい・・・
無くても穴を掘って埋まりたい(笑)
そんな感じでした

まぁ、一つ賢くなったウインク
それで自分を慰めときます(笑)




人気ブログランキング
人気ブログランキング



" allowfullscreen>

小林さん研修

●ミーティングにて

新人さんの来週の予定は、月曜日から金曜日まで小林さん研修
小林さんというのは、IBM Power(AS/400) のスペシャリストで
小林さん研修というのはソフトウェア開発以外の技術研修らしい

部の責任者が、他に参加したい人って聞いてきたので
恐る恐る手を上げたら、私も参加できることに
●私の想像

それはきっと、IBM Power(AS/400)のアーキテクチャーやOSの構造など
そんな私としては復習しておきたい事柄だと思い
ウキウキしていました。
●ところが

夕方近く、その責任者から
[小林さん研修]は新人社員相手の研修だから
今回、Takiさんは参加しなくてもいいですよねって
見合わせになりました(笑)
●まぁ、そうだよね

まぁ、半分冗談で手を上げてみて
それが通っちゃったけど、実際に研修を受けて得るものは?
って考えると、それはあまり無いでしょうね

逆に、そんな時間を無為に過ごすのは給料泥棒の範疇になるから
これで良かったのかも(笑)




人気ブログランキング
人気ブログランキング



" allowfullscreen>
タグ:IBM IBMAS/400 AS/400
ファン
検索
<< 2024年05月 >>
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
最新記事
写真ギャラリー
最新コメント
タグクラウド
カテゴリーアーカイブ
プロフィール
Y.Taki@AS400さんの画像
Y.Taki@AS400
IBM AS/400で稼働するシステムの開発・追加を担当して30年以上になります。使えば使うほどこの AS/400 が好きになりました。 こんなSEがいろいろな視点から様々な業務などについて語ります。
プロフィール