Newer
Older
Ruby / j2223_last.rb
#!/usr/bin/env ruby
# -*- coding: utf-8 -*-

#このプログラムはCSVとwhileを使ったプログラムです。whileで1を選ぶとryouri.csvを読み込み、山形県の郷土料理一覧を表示できます。2を選ぶとtyoumiryou.csvを読み込み、主な調味料を小さじ(5ml)をgに換算した一覧も表示できます。3を選ぶと終了です。郷土料理は8品表示されます。調味料はとにかく打ち込んだのでたくさんのものを表示できます。
#このプログラムは「郷土料理作りたいし、食べたいけど作り方がわからない!という人の悩みを解決するプログラム」です。
#このテーマにしようと思ったきっかけは学校での話です。学校の給食でたまに納豆汁や芋煮などが出るのですが、友達が家であまり食べないと話していました。「なんで?」と聞いてみるとお母さんが作り方がわからないそうです。私の家のお母さんも今、おばあちゃんからいろんな郷土料理を教えてもらっています。だからきっと郷土料理の作り方を知らない人は多いのではないかと思いました。そして、料理を作るときに私は何が何gで何が小さじ何はいかわからなくなってしまって失敗したことがあります。そんな失敗を防ぐために小さじ(5ml)をgに換算した一覧もつけました。
#実装したい機能は計算機、季節ごとのレシピです。
#結果としては悩みは解決できたのではないかなと思います。有名な郷土料理のレシピを書くことで郷土料理に興味を持てもらえるかもしれないし、計算が苦手なひとに調味料の換算はあったほうが楽だと思うからです。改良すべき点としては見にくいことです。実際にURLを表示させてそのホームページにとんだほうが見やすいと思います。
#他に考えたテーマは、連絡先一覧です。電話番号や住所がわからなくならないように名前のあかさたなで住所や電話番号を表示させたり、書き込んだりできるプログラムも作ってみたいなと思いました。

require'csv'#csvライブラリ読み込み
ryouri=CSV.read("ryouri.csv",headers:true)#ryouri.csv読み込み
tyoumiryou=CSV.read("tyoumiryou.csv",headers:true)#tyoumiryou.csv読み込み

while true
  puts"1 郷土料理の作り方一覧"
  puts"2 調味料 小さじ=g 換算"
  puts"3 終了"
  print"どれか一つ選んでください:"
  input=gets.to_i
  if input == 3#3が入力されたなら終了
    break#ifを終了する
  elsif input == 1#1が入力されたなら
  ryouri.each do |menu|
    printf("%sの作り方を説明します\n",menu["料理名"])#料理名表示
    printf("材料%s\n作り方%s\n",menu["材料"],menu["作り方"])#材料と作り方表示
    print("********************************************************************************\n")#レシピとレシピのしきり
  end#ryouru.each do |menu|を終了する
  break#elsif終了する
  elsif input == 2#2が入力されたなら
    tyoumiryou.each do |menu2|
      printf("調味料*%s*    小さじ(5ml)の重さ*%s*\n",menu2["調味料"],menu2["小さじ"])
    end#tyoumiryou.each do |menu2|を終了する
      break#elsifを終了する
    else
      puts"その選択肢はありません"
      redo#繰り返す
    end
  end