###あらすじ(読み飛ばしてください!)
rubyでアルゴリズムを考えるような問題を解いていました(´・ω・`)
そのとき、自分は( ゚Д゚)ハッ!?っと気付いたのです。
エラーが起きてる事に(´;ω;`)
これはどうにかせねばっと思いまして、最近気になってteratailを使おうと思いここにやって来ました(=゚ω゚)ノ
簡単に既出の質問がないか調べたんですけどもし調べが甘かったりしたら申し訳ございません。
ご指摘いただけると幸いです。
以下が自分のハマった内容です。
###前提・実現したいこと
自分は繰り返し処理を行う中で値を受け取って、その次にすぐif文を実現しようとしていました。
受け取る値は以下のようなフォーマットです。
(mはmoveを指し、F,R,B,Lはそれぞれ方向の意味です。)
m F m R m B ...(10回行うとします。)
そして自分が具体的に実行しようと思ったコードが次のようなモノです。
10.times do # m Fなどを受け取る! str = gets.chomp.split(" ") if str[0] == m then # m Fのとき if str[1] == F then height += Front # m Rのとき elsif str[1] == R then width += Right # m Bのとき elsif str[1] == B then height -= Back # m Lのとき elsif str[1] == L then width -= Left end else (str[0] != mのときの処理) end end
###発生している問題・エラーメッセージ
エラーメッセージ SyntaxError
###試したこと
多分、if文を二重構造にしたのがキモいのかなぁ。。っと思ったんですがそれとは別にgetsが上手く起動しませんでした。。
おそろくtimesの外でgetsしないといけないのですが、それだと一回しか受け取れなくて困ってます(´;ω;`)
どなたか、未熟な自分に助言を。。。
よろしくお願い致します。
回答3件
あなたの回答
tips
プレビュー