2015-03-02 24 views
0
def load x 
    @maze_string = x 
    @maze_string_split = x.chars.to_a 
    string_counter = 0 
    [email protected] 
    [email protected] 

    (0..(y*2+1)).each do |n| 
     if @maze_string_split[counter] !=1 
      puts "Error in given string, wall expected" 
     else 
      @maze_array[n] = @maze_string_split[counter] 
      counter++ 
     end 

     (0..(x*2)).each do |m| 
      if n==0 || n==(y*2+1) || m==(x*2) 
       if @maze_string_split[counter] != 1 
        puts "Error in given string" 
       else 
        @maze_array[n][m] = @maze_string_split[counter] 
        counter++ 
       end 
      else 
       @maze_array[n][m] = @maze_string_split[counter] 
       counter++ 
      end 
     end 
    end 
end 

我在每個if/else塊的結尾處的「end」語句的標題中出現錯誤。一切似乎都很好,但錯誤依然存在。我試圖看看是否有其他人有這個問題,但我找不到具體到我的問題爲if/else語句獲取「unexpected_key_end」

+0

下一次,是非常有用的發佈錯誤的完整回溯是他們提供有用的提示錯誤來自何處。在這種情況下,每個'unexpected keyword_end'錯誤都來自每個'if'語句,並且每個錯誤都有'counter ++'問題。 – 2015-03-02 16:57:39

回答

2

紅寶石沒有++--運算符。

Ruby不會正確解析這些,因爲你得到unexpected keyword_end的原因是,它期望另一個操作數。

更換

counter++counter += 1

另外,請注意您的變量是不是叫counterstring_counter

+0

謝謝!我一直犯這個錯誤 – 2015-03-02 17:35:42