获得"意外的keyword_end"对于if / else语句

时间:2015-03-02 16:47:04

标签: ruby

def load x
    @maze_string = x
    @maze_string_split = x.chars.to_a
    string_counter = 0
    y=@height
    x=@width

    (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”语句的标题中收到错误。一切似乎都很好,但错误仍然存​​在。我试着看看是否有其他人有这个问题,但我找不到任何具体的问题

1 个答案:

答案 0 :(得分:2)

Ruby没有++--运算符。

Ruby不会正确地解析这些因为这是你获得unexpected keyword_end的原因,它期待另一个操作数。

替换

带有counter++

counter += 1

另请注意,您的变量不是counter,而是string_counter