2013年2月25日月曜日

開発環境

『初めてのプログラミング 第2版』(Chris Pine 著、長尾 高弘 訳、オライリー・ジャパン、2010年、ISBN978-4-87311-469-9)の 7章(フロー制御), 7.5(練習問題)うるう年 を解いてみる。

その他参考書籍

うるう年

コード(BBEdit)

sample.rb

#!/usr/bin/env ruby1.9
#-*- coding: utf-8 -*-

print "先頭の年: "
start = gets.chomp.to_i
print "末尾の年: "
stop = gets.chomp.to_i

year = start

while year <= stop
    if year % 4 == 0 and (
        year % 100 != 0 or year % 400 == 0)
        puts year
        break
    end
    year += 1
end
year += 4
while year <= stop
    if year % 100 != 0 or year % 400 == 0
        puts year
    end
    year += 4
end

入出力結果(Terminal)

$ ./sample.rb
先頭の年: 2000
末尾の年: 2005
2000
2004
$ ./sample.rb
先頭の年: 1795
末尾の年: 1805
1796
1804
$ ./sample.rb
先頭の年: 1895
末尾の年: 1905
1896
1904
$ ./sample.rb
先頭の年: 1595
末尾の年: 1605
1596
1600
1604
$ ./sample.rb
先頭の年: 1995
末尾の年: 2005
1996
2000
2004
$

ちなみにJavaScriptの場合。

コード(BBEdit)

var start = parseInt($('#y_start').val(), 10),
    stop = parseInt($('#y_stop').val(), 10),
    year = start,
    result = "";
while ( year <= stop ) {
    if ( year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0) ) {
        result += year + "\n";
        break;
    }
    year += 1;
}
year += 4;
while ( year <= stop ) {
    if ( year % 100 !== 0 || year % 400 === 0 ) {
        result += year + "\n";
    }
    year += 4;
}
$('#pre0').text(result);


0 コメント:

コメントを投稿