# coding: utf-8 #プログラムのテーマ #カードの整理ができるプログラム #プログラムの説明 #まずこのプログラムを作ろうと思った動機を説明します僕はカードゲームにハマっていているのですが、カードの整理ができないのでこのプログラムを作ろうと思いました。 #このプログラムは主にカードの追加と持っているカードを見ることができる2つのモードに分かれています。 #カードの追加のモードを選ぶと、行の名前を入力するとこから始まります。ここでは追加したいカードの頭文字の行をローマ字で入力します。するとその行の名前のcsvファイルが開かれます。次にカードの名前の入力をします。カードの名前を入力するとそのカードがcsvファイルに保存されます。 #持っているカードを見ることができるモードを選ぶと、行の名前をローマ字で指定することでその行のcsvファイルが開き指定した行の文字の頭文字のカードの名前を見ることができます。 #このプログラムの改善点 #・特定の記号を入力できないこと #・同じ名前のカードを複数持っている場合、同じ名前が出てしまうこと # ⇓ #カードの枚数で表記できるようにしたい #他に思いついたプログラム #・お金を管理するプログラム #・ru-thi-n2.rb #!/usr/bin/env ruby # coding: utf-8 require 'csv' puts("1.カードの追加2.持っているカードを見る")#このプログラムのモードを選びます bangou = gets.to_i if bangou == 1 #1を選んだ場合 print("行の名前を入力してください(ローマ字で): ")#ローマ字で行の名前を入力 例:agyou kado = gets.chomp file = kado +".csv"#csvファイルの名前を変数に入れる CSV.open(file,"a") do |c| printf("入手したカードの名前を入力してください:") ca = gets.chomp c << [ca] #カードの名前がcsvファイルに入る end elsif bangou == 2 #2を選んだ場合 puts("どの行のカードを見たいですか(ローマ字で入力してください)") kado = gets.chomp file = kado +".csv" cado = CSV.read(file,:headers => true) cado.each{|row| printf("%sを持っています。\n",row)}#選んだ行のカードの名前が出てくる else puts("その選択肢はないよ") end