Newer
Older
Ruby / j2205_last.rb
#!/usr/bin/env ruby
# -*- coding: utf-8 -*-
#僕は学習用プログラムを作成しました。
#このプログラム自身ではteisyutu-1.rbファイルとteisyutu-2.rbファイルの出力をすることができます。
#teisyutu-1.rbの説明
#teisyutu-1.rbは自分が勉強した勉強時間を計測し、記録することができます。このプログラムを起動するとTimeクラスを利用したコマンドで勉強時間の計測が行われます。始めるときはEnterで再度Enterを押すとタイマーを終了させることができます。ここで本当はタイマーを途中でストップさせるコマンドを入れたかったのですが時間的要因から入れることができませんでした。再度Enterを押したあとは勉強時間が表示され、結果を入力、保存をします。ここではテキストファイルへの編集、表示のコマンドを利用して作成しましたが、本当はCSVファイルを利用して作成したかったのですがうまく作成できなかったのでテキストファイルに保存する形になりました。また、書いて、保存したものの編集もしたかったのですが、時間的な要因で完成させることができませんでした。
#teisyutu-2.rbの説明
#teisyutu-2.rbでは、課題管理を行うことができます。はじめにそのプログラムを起動した時間を表示させることができるコマンドを入れました。その後ifで提出日までの日数計算、カレンダーの表示、課題の入力、表示、プログラムからの脱出を4つに分岐します。似数計算のプログラムではDateクラスを利用して作成しました。ここはたまにマイナス表示になってしまうのですが、このバクは解消することができませんでした。カレンダーの表示はDateクラスを利用したものです。課題の入力、表示では、teisyutu-1.rbの結果の入力で利用したテキストファイルに編集、保存する方法でしました。ここでも、本当は編集するコマンドを入れたかったのですが実装することはできませんでした。プログラムからの脱出はbreakを利用したものでlast.rbに帰って来るようになっています。

#長々とすみませんでした...

while true
  puts"学習用プログラム"
  sleep(1)
  puts"何をしますか?"
  puts"1:勉強時間の計測"
  puts"2:課題の管理"
  puts"3:プログラムの終了"
  kotae = gets.to_i

  if kotae == 1
    require'./teisyutu-1.rb'
  end

  if kotae == 2
    require'./teisyutu-2.rb'
  end

  if kotae == 3
    puts"プログラムを終了します"
    sleep(2)
    break
  end
end