ayabaudのRuby学習記録 RSSフィード

2007-09-24

[] 11:47 2007-09-24 - ayabaudのRuby学習記録 を含むブックマーク 2007-09-24 - ayabaudのRuby学習記録 のブックマークコメント

以前、日記に書いたのをhiro-uedaさんからアドバイスを頂いたので、Yをyに直してみました。

require 'date'

print "生まれた年を教えてください。\n"
y = gets.chomp.to_i
print "生まれた月を教えてください。\n"
m = gets.chomp.to_i
print "生まれた日を教えてください。\n"
d = gets.chomp.to_i

birth_day = Date.new(y, m, d).to_s

t = Date.today.to_s

age = (t.to_i - birth_day.to_i)

age.times {|happy|
  print happy + 1, "年目のお誕生日おめでとう!\n"
  sleep(1)
}

久しぶりにこの自分で書いたのを見て、何かが抜けているような気がしています。

これだと、何年目だけだ。

「○年×月△日、□年目のお誕生日おめでとう」になるように後で書き直すぞー!(がんばれ!自分!

そして、まだまだ基礎が出来てないbaudでございます。

Railsに現を抜かしてる場合じゃない、自分!!!

2007-07-21今日やったこと

[]今日やったこと 17:29 今日やったこと - ayabaudのRuby学習記録 を含むブックマーク はてなブックマーク - 今日やったこと - ayabaudのRuby学習記録 今日やったこと - ayabaudのRuby学習記録 のブックマークコメント

require 'date'

print "生まれた年を教えてください。\n"
Y = gets.chomp.to_i
print "生まれた月を教えてください。\n"
m = gets.chomp.to_i
print "生まれた日を教えてください。\n"
d = gets.chomp.to_i

birth_day = Date.new(Y, m, d).to_s

t = Date.today.to_s

age = (t.to_i - birth_day.to_i)

age.times {|happy|
  print happy + 1, "年目のお誕生日おめでとう!\n"
  sleep(1)
}

問題集をやってみた。

Dateクラスtimesメソッドを使って書いてみた。

うーん、なんかすっきりしないなぁ。

Dateクラス使う時ってrequire'date'が必要なんだけど、

require'date'書かなくても動くってどういう事だ?

とりあえず書いたけど。

そして、全体的に何かなぁ…

こういう初めの頃に書いたプログラムって、後に「こんなの書いてたのかよ!」

って恥ずかしくなったりするんだろうなぁ…

うーん。

rabbixrabbix2007/07/22 10:56こんにちわーwはじめまして
自分もその恥ずかしくなりそうな一人ですw
初心者だととにかくひたすら問題集こなしたりネット上のコピペして少しいじったり…
ってことくらいしかできないですよね。
このグループの皆さんと互いにソースを見せ合って成長していければと思います。
今後ともよろしくお願いしますー。

ayabaudayabaud2007/07/22 15:17rabbixさん
はじめまして、こんにちは。
そうですねぇ。。<初心者だと
でも、色々な人の書き方を見たり、たくさん書いたりして成長していきたいと思ってます^^
こちらこそ宜しくお願いします。

hiro-uedahiro-ueda2007/09/23 22:48こんにちは。
変数ですが Ruby の場合、大文字は定数というルールがあるようですので、Y は y にした方が良さそうです。

ayabaudayabaud2007/09/24 11:05hiro-uedaさま
はじめまして、こんにちは。
アドバイス頂けてとても嬉しいです^^
西暦を表すという理由でYを使用してみたのですが、そんなルールがあったとは知りませんでしたorz
ありがとうございました。
また何かありましたら是非是非よろしくお願い致します。

2007-07-14

[]今日やったとこのメモ YAML 17:31 今日やったとこのメモ YAML - ayabaudのRuby学習記録 を含むブックマーク はてなブックマーク - 今日やったとこのメモ YAML - ayabaudのRuby学習記録 今日やったとこのメモ YAML - ayabaudのRuby学習記録 のブックマークコメント


require 'yaml'

moru_array = ['hoge','piyo','pui','moru']

moru_string = moru_array.to_yaml

filename = 'Morurun.txt'
File.open filename, 'w' do|f|
  f.write moru_string
end

read_string = File.read filename

read_array = YAML::load read_string
puts (read_string == moru_string)
puts (read_array == moru_array)

た、楽しい

でも、配列日本語使うと文字化けしちゃうのね。(本には1.8.5と1.8.4ではって載ってるけど、1.8.6も

だめなんだね)

1.8.2は大丈夫らしいけど。

あと、「{}」は「do~end」と同じだと思ってたんだけど、今回使えなかった。

なぜだろう。

2007-07-11今日やったとこのメモ

[]今日やったとこのメモ 17:31 今日やったとこのメモ - ayabaudのRuby学習記録 を含むブックマーク はてなブックマーク - 今日やったとこのメモ - ayabaudのRuby学習記録 今日やったとこのメモ - ayabaudのRuby学習記録 のブックマークコメント


def tibimoruko question
  puts question
  reply = gets.chomp


  if reply == 'hoge'
    true
  elsif reply == 'piyo'
    false
  else
    puts 'purupuru'
    tibimoruko question
  end
end

tibimoruko 'morurunrun'
tibimoruko 'puipui'

recursionを学習

こんなにスマートになるのか。。

明日は前に書いたやつを再帰を使って書き直したりしてみよう。

2007-07-09

[]昨日やったとこのメモ 17:32 昨日やったとこのメモ - ayabaudのRuby学習記録 を含むブックマーク はてなブックマーク - 昨日やったとこのメモ - ayabaudのRuby学習記録 昨日やったとこのメモ - ayabaudのRuby学習記録 のブックマークコメント


def dinner_menu name 
  if name == 'morurun'
    return 'レタス'
  end

  if name == 'tibimoruko'
    return  'チモシー'
  end

  'さて、私たちは何にする?'

  if name == 'ayabaud'
    return  'アマトリチァーナ'
  elsif name == 'ヨシダプロ' #ヨシダプロのファンなので妄想してしまいました。
    '焼肉がいいかな!'
  else
    'お任せ~'
    
  end
end


def alcohol_menu name
  if name == 'ayabaud'
    'キャンティが飲みたいわ'
  elsif name == 'ちゃーこ'
    'じゃ、私はビール!'
  else
    '同じもので'
  end
end


puts dinner_menu('morurun')
puts dinner_menu('tibimoruko')
puts dinner_menu('ayabaud')
puts dinner_menu('ヨシダプロ')
puts alcohol_menu('ayabaud')
puts alcohol_menu('ちゃーこ')
puts alcohol_menu('ヴィヴィアン')

returnは特別な場合に使ってと書いてあった。

のでペットreturn

まだ本のやつを参考にでしか書けてないけど、

まずは形を覚えにゃいかんからなぁ。

でも、練習問題があるからそれで自分で書いたのが動くと

理解してるんだなって思って嬉しいけど。