Entries

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

-件のコメント

コメントの投稿

新規

投稿した内容は管理者にだけ閲覧出来ます

rubyで時刻を扱う

組み込みクラスTimeを使ってみた。時刻の演算が簡単にできておもしろかった。
日付と時刻をそれぞれ "yyyy/mm/dd", "hh:mm:ss" の形式で与えておいて、それを split し、mktime メッセージを送る。
bgn=Time.mktime(*(bgndate.split("/")+bgntime.split(":")))
endpc=Time.mktime(*(enddatepc.split("/")+endtimepc.split(":")))
endlg=Time.mktime(*(enddatelg.split("/")+endtimelg.split(":")))
のようにする。ここで、"*"という指定は、直後の配列を引数に展開することを意味している。 引数リストの最後にしか使えないみたい。

あとは、これらの時間の間で次のような演算をしてみたりした。

factor=(endpc-bgn)/(endlg-bgn)
ralt=bgn+(rect-bgn)*factor
rgmt=ralt-(6*3600)
このコードをみると、どのような地域の話をしているかがわかりますね? ちなみに、北緯24度くらいです。 時間の差の比も、時間の差の積も、和演算も、完全に思惑通りの動作をする。便利だ。

最後に結果の出力。strftimeメソッドを使うと良い。

print rgmt.strftime("%Y %m %d %H %M %S\n")

ともかくも、rubyリファレンスマニュアルを読みながら書いてみた。

スポンサーサイト

0件のコメント

コメントの投稿

新規

投稿した内容は管理者にだけ閲覧出来ます

Extra

プロフィール

象(Zoo)

  • Author:象(Zoo)
  • 理系研究者です。科学好き、やや社会派、体を動かすのも好きです。

最近の記事

最近のトラックバック

ブログ内検索

バナーエリア

ブロとも申請フォーム

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。