• ベストアンサー

式の意味

ACCESSというデータベースに以下のような式が入っていたのですが、どのような計算をしているのか分かりません ご教授して頂けたら幸いです。 (([休日時間]+[普通時間]+[深夜時間]-1)\5+1)*5

質問者が選んだベストアンサー

  • ベストアンサー
noname#24477
noname#24477
回答No.2

具体的な数で考えて見ましょう。 話を簡単にするために分単位の端数は無いとします。 [休日時間]+[普通時間]+[深夜時間] =4のとき   (4-1)を5でわって0(¥5は余り切り捨てです)  これに1をたして5倍すると 答5 =5のとき   (5-1)を5で割って0   これに1を足して5倍すると 答5 =6のとき   (6-1)を5で割って1   これに1を足して5倍すると 答10 つまり5の倍数を基準に切り上げる計算です。 1を引いてから5で割って、改めて1を足すのは 余計なことをしているように見えますが ちょうど5の倍数のとき繰り上がってしまわないように 工夫をしているわけです。

その他の回答 (2)

回答No.3

\は商を求める演算子で、整数値を返します。小数点以下は切り捨てです。(#2の回答にもその点が含まれていますよ。)それに対しMODという余りを求める演算子もあります。 今回の場合、 7-1=6 6 割 5=1 余り 1 1+1=2 2*5=10 となります。

回答No.1

休日、普通、深夜のそれぞれの時間を足した数を5の倍数で切り上げる式です。 普通でしたら、5で割って切り上げた後に5を掛ければよいと思うのですが、ちょっと分かりにくい書き方をしていますね。 ちなみに¥は商を求める演算子です。

niiza
質問者

補足

ご返事有り難うございました。 理解不足ですいませんが 再度ご質問させて下さい 休日、普通、深夜のそれぞれの時間を足した数が7だとしますよね。切り上げと言うことで10になると思うのですが、 7-1=6 6/5=1.2 1.2+1=2.2 2.2*5=11 に、10にならないのですが・・・。 頭が悪くてすいませんが ご教授して頂けたら幸いです。

関連するQ&A