質問するログイン新規登録

Q&A

解決済

4回答

2332閲覧

ruby 子供の学年を判断するプログラム

Nish

総合スコア14

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

0グッド

0クリップ

投稿2020/04/04 00:16

0

0

Rubyで誕生日の生年月日から現在の学年を判断するプログラムを作りたいと思っています。
現在下記のプログラムですと誕生日を迎えた時点で学年が上がってしまいます。4月1日の時点で
学年が上がるようにしたいのですが、どのように修正したらいいか伺えないでしょうか。
何卒宜しくお願い申し上げます。

ruby

require "date"

puts "西暦何年にお子さんは生まれましたか"
by = gets.to_i
puts "何月にお子さんは生まれましたか"
bm = gets.to_i
puts "何日に生まれましたか"
bd = gets.to_i

birthday =Time.mktime(by,bm,bd)
age = (Date.today.strftime('%Y%m%d').to_i - birthday.strftime('%Y%m%d').to_i) / 10000

case age

when 0
puts "学校にはまだいけません。"
when 1
puts "学校にはまだいけません。"
when 2
puts "学校にはまだいけません。"
when 3
puts "幼稚園の年少です。"
when 4
puts "幼稚園の年中です。"
when 5
puts "幼稚園の年長です"
when 6
puts "小学校一年生です。"
when 7
puts "小学校二年生です。"
when 8
puts "小学校三年生です。"
when 9
puts "小学校四年生です。"
when 10
puts "小学校五年生です。"
when 11
puts "小学校六年生です。"
when 12
puts "中学校一年生です。"
when 13
puts "中学校二年生です。"
when 14
puts "中学校三年生です。"
when 15
puts "高校一年生です。"
when 16
puts "高校二年生です。"
when 17
puts "高校三年生です。"
when 18
puts "大学一年生です。"
when 19
puts "大学二年生です。"
when 20
puts "大学三年生です。"
when 21
puts "大学四年生です。"
else
puts "社会人です。"
end

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

コメントの取得に失敗しました

回答の取得に失敗しました

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.25%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問