質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Q&A

3回答

348閲覧

rubyの文字入力タイプのcase/while文がわかりません!

退会済みユーザー

退会済みユーザー

総合スコア0

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

0グッド

0クリップ

投稿2018/08/21 03:27

前提・実現したいこと

ここに質問の内容を詳しく書いてください。
番号を入力すると、番号通りのの処理がされる物を作りたいのですが、おそらくcase文・while文に誤りがあるのかエラーが出てしまいます。
間違えているよううな部分があれば、わかる方回答いただけたら幸いです!

def run
while true do
print "
1.蔵書データの登録
2.蔵書データの表示
9.終了
番号を選んでください(1,2,9):"

num = gets.chomp
case num
when "1"
addBookInfo
when "2"
listAllBookInfos
when "9"

end
end
end

発生している問題・エラーメッセージ

1.蔵書データの登録
2.蔵書データの表示
9.終了
番号を選んでください(1,2,9):/home/ec2-user/environment/ruby_ex/ex1401.rb:71:in run': undefined local variable or method  ' for #BookInfoManager:0x00000000664db0 (NameError)
from /home/ec2-user/environment/ruby_ex/ex1401.rb:86:in `<main>'

### 該当のソースコード ```ここに言語名を入力 ソースコード

試したこと

補足情報(FW/ツールのバージョンなど)

ruby 2.4.1p111
ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ruby

1def run 2 while true do 3 print " 41.蔵書データの登録 52.蔵書データの表示 69.終了 7番号を選んでください(1,2,9):" 8 9 num = gets.chomp 10 case num 11 when "1" 12 # addBookInfo 13 print "--- 1" 14 when "2" 15 # listAllBookInfos 16 print "--- 2" 17 when "9" 18 break 19 end 20 end 21end 22 23run

投稿2018/08/21 21:29

katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

とりあえず、「番号を選んでください」の次の行に全角空白が入り込んでます。

全角空白を安易に打てないIME設定にしましょう。
全角空白が目に見えるようなエディタ設定にしましょう。

投稿2018/08/21 03:41

otn

総合スコア84503

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

エラーメッセージのundefined local variable or methodの後に、全角スペースがあります。

Rubyでは、全角スペースも変数名やメソッド名の一部となるため、それを解釈しようとしてエラーとなっています。

投稿2018/08/21 03:37

maisumakun

総合スコア145183

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問