রুবি তারিখ এবং তারিখটাইম ক্লাসে তারিখ গণিত সমর্থন করে , যা রুবির মানক লাইব্রেরির অংশ। এই উভয় শ্রেণিই # + এবং # - পদ্ধতি প্রকাশ করে যা কোনও তারিখ বা সময় থেকে দিন যোগ করে বিয়োগ করে।
$ irb
> require 'date'
=> true
> (DateTime.new(2015,4,1) - 90).to_s
=> "2015-01-01T00:00:00+00:00"
> (DateTime.new(2015,4,1) - 1).to_s
=> "2015-03-31T00:00:00+00:00"
ব্যবহার করুন # << এবং # >> দিন পরিবর্তে মাস কাজ করার পদ্ধতি। মাসগুলিতে গাণিতিক দিনগুলিতে গাণিতিকের চেয়ে কিছুটা আলাদা। ডেটটাইমের পরিবর্তে তারিখ ব্যবহার প্রভাব আরও সুস্পষ্ট করে তোলে।
> (Date.new(2015, 5, 31) << 3).to_s
=> "2015-02-28"
আপনার জোদা-সময়ের উদাহরণ অনুসরণ করে আপনি রুবিতে এমন কিছু লিখতে পারেন।
now = DateTime.now
ninety_days_ago = now - 90
অথবা সম্ভবত ঠিক
ninety_days_ago = DateTime.now - 90