3/4ハリボテ

This commit is contained in:
Rikuoh Tsujitani 2024-03-07 22:40:32 +09:00
parent 92e3050f67
commit aa4394f2d6
Signed by: riq0h
GPG key ID: 010F09DEA298C717

49
cal.rb Normal file → Executable file
View file

@ -1,32 +1,29 @@
#!/usr/bin/ruby
require 'date' require 'date'
require 'optparse'
time = Time.now.localtime optmonth = ARGV.getopts('m:')
year = time.year.to_i optyear = ARGV.getopts('y:')
month = time.month.to_i
currentday = time.day # 現在日 # opt = OptionParser.new
# opt.on('-m')
# opt.on('-y')
# opt.parse!
year = Date.today.year
month = Date.today.month
startwday = Date.new(year, month, 1).wday # その月の最初の曜日 startwday = Date.new(year, month, 1).wday # その月の最初の曜日
endmonth = Date.new(year,month,-1) # その月の日数 enddate = Date.new(year, month, -1).day # その月の最後の曜
endwday = time.wday # その月の最後の曜日 week = %w[日 月 火 水 木 金 土]
puts "\t#{month}#{year}"
puts week.join(' ')
print ' ' * startwday
a = Date.new(2024, 3, 6) days = startwday
puts "\t#{a.month}\s#{a.year}" (1..enddate).each do |day|
b = %w(日 月 火 水 木 金 土) print day.to_s.rjust(2) + ' '
b.each do |week| days += 1
print "\s#{week}" print "\n" if days % 7 == 0
end end
days = (1..31).to_a
days.each do |day|
if day == 1
print "\n\s\s#{day}"
elsif day % 7 == 0 && day != 7
print "\s#{day}\n"
elsif day == 7
print "\s\s#{day}\n"
elsif day >= 10
print "\s#{day}"
else
print "\s\s#{day}"
end
end