• ベストアンサー

電卓の時間計算が変?

自分が持っている電卓「MW-102CL」では時間計算ができる機能を持っています。 分換算するとき「hh:mm:ss×60」とするのですが、普通6秒=0.1分だと思いますがこの電卓は 18秒(0.3分),36秒(0.6分),54秒(0.9分)以外はなぜか変な時間になってしまいます(キレイではありませんが動画あり)。 これはなぜなのですか。それともそうゆうものなのですか。

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

  • ベストアンサー
  • SI299792
  • ベストアンサー率48% (714/1472)
回答No.2

電卓は、時間を数字に変換してから計算します。 1時間は1です。 1分は0.016666666 1秒は0.000277777 になります。動画を拝見すると、電卓は10桁なので、それ以下は切りてられます。 6秒は0.001666666 となり、これを60倍すると、0.09999996になります。 切り捨てによる誤差です。 18秒は0.005 なので、正確に計算できます。 どうしても時間計算が必要で、これでは困るというのなら、関数電卓を買うしかありません。(関数電卓なら、結果を四捨五入してくれます。たいてい時間計算機能も付いています) もし、この後計算が続くのなら、ほぼ0.1 なので、0.1 と手て入れて計算をつつけるのがいいと思います。

h1409brt
質問者

お礼

回答ありがとうございました。

その他の回答 (2)

  • f272
  • ベストアンサー率46% (7998/17100)
回答No.3

浮動小数の誤差が出ているだけですね。そういうものです。 例えば0-0-24 * 60 = 0.39999996になっているようですが,24秒*60=24分とだいたい同じです。0.39999996時間=0.4時間=24分ですから。

h1409brt
質問者

お礼

回答ありがとうございました。

  • chie65535
  • ベストアンサー率43% (8516/19359)
回答No.1

>これはなぜなのですか。 小数点演算を行なう上での誤差です。 >それともそうゆうものなのですか。 「そういうもの」としか言いようがありません。 「×60」とやって「分が出る」のであれば、この電卓は「1分を1」として内部計算しているのでしょう。 ですので「18秒」は「18分の60」つまり「0.3」と計算しています。同様に、36秒は0.6、54秒は0.9として計算しています。 ですが「10秒」は「10分の60」つまり「0.166666…」と計算しています。電卓が計算可能な「最大桁数」を超えた部分は「丸め」が起こります。 つまり「0.166666…」は、どこかの桁で四捨五入されて「0.1666(中略)667」になっています。 この「最後の桁が四捨五入されている数値」に「60を掛け算」すると「最後の桁が四捨五入されている数値の60倍だけ狂う」事になります。 電卓で「1÷3×3=」を計算すると「1」になりますよね? でも「1÷3は0.333333333333だから」と言って「0.333333333333×3=」とやっても「1」にはならず「0.999999999999」になってしまいます。 貴方の電卓の時間計算では、これと同じ事が起きています。

h1409brt
質問者

お礼

回答ありがとうございました。

関連するQ&A

  • 131071秒を関数で日付と時間にするには?

    数値(秒)をエクセルで時間に換算しています。 24時間を超えた時、「○日HH:MM:SS」 のようにエクセルで表記できますか? 32767は、9:06:07 65535は、18:12:15 ここまでは書式設定を時間([$-F400]h:mm:ss AM/PM)にするだけで済みます 更に数値行を追加し、 131071 262143 524287 1048575 ... 9007199254740990 となったとき、どうしたら良いでしょうか? お分かりの方、どうぞよろしくお願いいたします。 ○日HH:MM:SS、 ○年○日HH:MM:SS のように関数をコピペして計算表示していきたいです。 Windows8pro Office2013のエクセルです。よろしくお願いいたします。

  • Excel 時間の計算について

    文字列でA1に秒数があります(例:327.00) これを分(hh:mm:ss)に直したいのですが、60で割り ユーザー定義でhh:mm:ssとしたら「10:48:00」となってしまい、正しく計算できません・・・ 基本的なところだとは思いますが、どうか教えて下さい

  • EXCELでミリ秒を計算する方法

    ミリ秒単位まで入力された時刻表記のセルがあります。 このセルの値をミリ秒に換算する方法を教えてください。 【セル書式】hh:mm:ss.000 ※hhは00固定 【例】 値は、「00:01:02.123」 これを、1*60000+2*1000+123=62123(ミリ秒) というように算出したいのです。 計算式は、「mm*60000+ss*10000+000(ミリ秒部分)」です。 VBAはやったことがないので、出来れば、関数等で出来る 方法をお願いします。

  • hh:mm:ssをmm:ssに換算

    エクセルのワークシート関数で1時間を超える時間(hh:mm:ss)を  分:秒(mm:ss)に換算するにはどうすれば良いでしょうか ? 例えば:  01:45:43  ----->105:30 時間を別セルに取り出して、同じく別セルに分を取り出して 時間数値に60を掛けて分に足せば出来ますが もっとスマートな方法がありますか ?

  • 時間単位の変換for Excel

    2:59:00(hh:mm:ss)を2:59(mm:ss)に変換する関数や方法をご教授頂いてもよろしいでしょうか? 2分59秒と入力していたつもりが2時間59秒00秒になっていました、、、 書式の変更や、値に変換などしてますがプロセスが導けていません。。。 何卒よろしくお願いします。

  • 24時間以上の秒数を[hh:mm:ss]にするには

    エクセルで、23時間59分59秒(86399秒)までの秒数は、秒数/3600/24をし、書式を[hh:mm:ss]にすれば、[23:59:59]と表示しますが24時間以上(86400秒以上)を入力すると、[0:00:00]となり0に戻ってしまいます。[24:00:00]と表示させるにはどうしたらよろしいでしょうか。

  • Excelでタイムコード(映像)の計算式を教えてください。

    こんにちわ。Excelでのタイムコード(映像)計算について教えて下さい。 時間の計算式はあるのですが、タイムコードということになると式が分かりません。 Excelで、タイムコードの計算式を作りたいのです。 例えば、イン点からアウト点までがあり、そのデュレーションを出したいのです。 映像はDVCAM等を使用していて、タイムコードは、hh:mm:ss:ffで、1秒は30フレームです。 フリーソフトでタイムコード電卓があるので、それを使っているのですが、一個一個計算して出しているので、Excelで数式でできれば効率がいいなぁ~?と思ってます。 よろしくお願いします。

  • 秒数変換

    秒数を入力してそれが何日、何時間、何分、何秒に変換するプログラムを作りたいのですが Sub 秒数変換() Dim tt As Long, dd As Long, hh As Long, mm As Long, ss As Long tt = ("秒数を入力してください") mm = tt \ 60: ss = tt Mod 60 hh = mm \ 60: mm = mm Mod 60 dd = hh \ 24: hh = hh Mod 24 MsgBox tt & "秒は" & dd & "日" & hh & "時間" & mm & "分" & ss & "秒です" End Sub 自分で考えてこう作成したのですが、実行すると型があっていませんと表示がでます。なぜでしょう?

  • 実働時間を電卓で簡単に計算するには?

    出社 8時45分 帰社 18時37分 途中、1時間の休憩 上記の設定で実働時間を出す簡単な方法無いでしょうか? Windows標準の電卓を使ってすぐに求めたいのですが いい計算方法が浮かびません。

  • 電卓での時間の計算の仕方

    アルバイトの勤務時間を出勤時刻と退出時刻から算出する場合に、電卓で簡単に計算できないでしょうか? 単純に退出時刻-出勤時刻で出るものもあるんですけど、  出 9:45  退 17:03 とかの場合、そのまま引く(1703-945)と時から分へのくり下がりがちゃんとできず変なことになってきてしまいます。 暗算したほうが速いような気もするのですが、これをやるのは数学苦手、面倒なことも苦手な店長なので、なにか良い案をお願いします。

専門家に質問してみよう