マドノマグラの初心者自作ゲーム制作日誌 迷走モード
プログラミング初心者が自作ゲームを作成してみようとする動きを記す。現在迷走中。
ブログ履歴
2010/11/06:
HSP3.22の環境を整えてみる
2009/11/09: Rubyで適当版自分用関連記事リンク作成プログラムを作る
2009/06/04: Visual C++(DXライブラリ使用)の環境を整えてみるも休止状態に
2009/03/17: ActionScript勉強の環境を整えるも結局休止状態に
2006/07/15: とりあえず分岐型ゲームを作る グリーンタワーVer1.2 ダウンロード(zip)
2006/07/02: ブログスタート。NScripterで何かを作ろうとする
2009/11/09: Rubyで適当版自分用関連記事リンク作成プログラムを作る
2009/06/04: Visual C++(DXライブラリ使用)の環境を整えてみるも休止状態に
2009/03/17: ActionScript勉強の環境を整えるも結局休止状態に
2006/07/15: とりあえず分岐型ゲームを作る グリーンタワーVer1.2 ダウンロード(zip)
2006/07/02: ブログスタート。NScripterで何かを作ろうとする
[PR]
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
誕生日から10億秒後の世界「初めてのプログラミング」12.2練習問題1問目
初めてのプログラミングの12.2練習問題1問目、誕生日から10億秒後の世界を考えてみる。
10億秒の計算の前に、誕生日を入れてもらう入力モードを作った。
年月日時分秒の順に入力してもらうような仕様。
ただし日の場合は、すでに入れられた年月の値によって、範囲が異なるのでこれだけ別処理にした。
あとTimeクラスを使う関係上、年は1970から入力OKとした。
ただ10億秒後の日付がいつになるかなんて、私は知らないので出力結果が正しいかどうかはわからん。
初めてのプログラミング
posted with amazlet at 08.09.02
Chris Pine
オライリー・ジャパン
売り上げランキング: 161616
オライリー・ジャパン
売り上げランキング: 161616
おすすめ度の平均:
Rubyを使ってHello, Worldから丁寧な解説
Ruby
onebillion0.rb
=begin
10億秒の計算の前に、誕生日を入れてもらう入力モードが必要だろう。
生年月日+時分秒までの入力をさせる必要がある。
ただし、日だけは、年月によって範囲が変わってくるというめんどくさいことに
日だけ分けるべきか、あくまで1つのメソッドの中での例外処理とすべきなのか。
それが問題だ。
=end
def input_data(comment, top, bottom)
puts "生まれた"+ comment + "を入れてね。ただし" + top.to_s + "から" + bottom.to_s + "の範囲でお願いね"
data = gets.chomp.to_i
if data =="" || data < top || data > bottom
puts "範囲外だからもう一回打ち込んでね"
data = input_data(comment, top, bottom)
end
data
end
def day_input_data(year, month)
missing = true
while missing
missing = true
puts "生まれた日にちを入れてね"
data = gets.chomp.to_i
if data == "" || data < 1 || data >31
puts "範囲外なのでもう一度お願いね"
elsif data == 31 && ( month == 2 || month == 4 || month == 6 || month == 9 || month == 11)
puts "にしむくさむらいには、31はないですよ、もう一回入れてね"
elsif data == 30 && month == 2
puts "2月30日ってないんだよねー。もう1回入れてね"
elsif data == 29 && (( year%4 != 0 || year%100 == 0 ) && year%400 != 0)
puts year.to_s + "年はうるう年じゃないんですよ。もう一回入れてね"
else
missing = false
end
end
data
end
def set_input(setting, time_data)
setting.each do |contents|
time_data.push input_data(contents[0], contents[1], contents[2])
end
time_data
end
ym_set = [["年", 1970, 2008], ["月", 1, 12]]
hms_set =[["時間", 0, 23],["分", 0, 59],["秒数", 0, 59]]
time_data = []
time_data = set_input(ym_set,time_data)
time_data.push day_input_data(time_data[0], time_data[1])
time_data = set_input(hms_set,time_data)
birthday = Time.mktime(time_data[0], time_data[1], time_data[2], time_data[3], time_data[4], time_data[5])
puts "あなたの誕生日は"
puts birthday
puts "誕生日から10億秒後は"
onebillion = Time.new
onebillion = birthday + 1_000_000_000
puts onebillion
PR
この記事にコメントする
PR
カテゴリー
最新記事
(04/22)
(11/20)
(11/11)
(11/11)
(11/09)
(11/07)
(11/07)
(11/07)
(11/07)
(11/06)
アーカイブ
プロフィール
HN:
マドノマグラ
HP:
性別:
非公開
職業:
謎
趣味:
駄文書き
自己紹介:
ゲームを作ろうとしているうちに、言語学習に飽きていく。典型的なダメな人パターンに陥るアホな人