開発環境
- OS X Lion - Apple(OS)
- BBEdit - Bare Bones Software, Inc.(Text Editor)
- Script言語:Ruby
『初めてのプログラミング 第2版』(Chris Pine 著、長尾 高弘 訳、オライリー・ジャパン、2010年、ISBN978-4-87311-469-9)の 2章(数値), 2.5(練習問題)10年の分数 を解いてみる。
その他参考書籍
- 『プログラミング言語 Ruby』David Flanagan, まつもと ゆきひろ 著 、卜部 昌平 監訳、長尾 高弘 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-394-4)
- Rubyクックブック ―エキスパートのための応用レシピ集
10年の分数
コード(BBEdit)
sample.rb
#!/usr/bin/env ruby1.9 #-*- coding: utf-8 -*- td = Time.new ago = Time.local(td.year - 10, td.month, td.day, td.hour, td.min, td.sec) puts "今日: #{td}" puts "10年前: #{ago}" puts "過去10年の分数: #{((td - ago) / 60).to_i}分"
入出力結果(Terminal)
$ ./sample.rb 今日: 2013-01-07 15:46:56 +0900 10年前: 2003-01-07 15:46:56 +0900 過去10年の分数: 5260320分 $
ちなみにJavaScriptの場合。
コード(BBEdit)
var td = new Date(); var ago = new Date(); ago.setFullYear(td.getFullYear() - 10); var result = td + "\n" + ago + "\n" + "過去10年間の分数: " + parseInt((td - ago) / (60 * 1000)) + "分\n"; $('#pre0').text(result);
pythonの場合。
sample.py
コード(BBEdit)
#!/usr/bin/env python3.3 # -*- coding: utf-8 -*- import datetime td = datetime.datetime.today() ago = td.replace(year=td.year - 10) print("今日の日付: {0}".format(td)) print("10年前: {0}".format(ago)) print("過去一年間の分数: {0}分間".format(int( (td.timestamp() - ago.timestamp()) / 60)))
入出力結果(Terminal)
$ ./sample.py 今日の日付: 2013-01-07 15:52:03.167216 10年前: 2003-01-07 15:52:03.167216 過去一年間の分数: 5260320分間 $
perlの場合。
sample.pl
コード(BBEdit)
#!/usr/bin/env perl use strict; use warnings; use utf8; use 5.016; binmode STDIN, ":utf8"; binmode STDOUT, ":utf8"; use Time::Local; my $td_timestamp = timelocal((localtime)[0, 1, 2, 3, 4, 5]); my $ago_timestamp = timelocal((localtime)[0, 1, 2, 3, 4], (localtime)[5] - 10); my $td = localtime($td_timestamp); my $ago = localtime($ago_timestamp); print "今日の日付: " . $td . "\n"; print "10年前: " . $ago . "\n"; print "過去1年の分数: " . ($td_timestamp - $ago_timestamp) / 60 . "分\n";
入出力結果(Terminal)
$ ./sample.pl 今日の日付: Mon Jan 7 15:53:36 2013 10年前: Tue Jan 7 15:53:36 2003 過去1年の分数: 5260320分 $
0 コメント:
コメントを投稿