```@Chris Hulan,
I thought I could improve that code, so I made this
https://bitbucket.org/rafaelmoraesdefreitas/nuvem-de-cinzas/src/303ae3987a8=

Could you look at it and come with some critics and/or advices?

On 23 November 2013 14:55, Chris Hulan <chris.hulan / gmail.com> wrote:

> Note that Ruby arrays re-size as needed
>
> so when j =3D 7 (the last index of a 8 element array)
> and you assign a value to j+1, then the array is expanded to 9 elements
> and the value stored
>
>
>
>
> On Fri, Nov 22, 2013 at 9:26 PM, Rafael Moraes <
> rafaelmoraesdefreitas / gmail.com> wrote:
>
>> Only correcting myself
>> none of the ifs with minus operations
>>
>>
>> On 23 November 2013 00:23, Rafael Moraes <rafaelmoraesdefreitas / gmail.co=
m
>> > wrote:
>>
>>>
>>>
>>>
>>> but I can tell you the following:
>>>
>>>
>>>
j] =3D "X"            end            if !esperado[i][j-1].nil?             =
>>>
>>>
>>> None of these if will evaluate to false, lets say you are at position [=
0, 0] and apply the [i - 1][j]
>>>
>>> it will become [-1, 0]
>>>
>>> and index -1 is the last index of an array
>>>
>>> example:
>>>
>>> irb(main):001:0> array =3D ['first', 'second', 'third']
>>> =3D> ["first", "second", "third"]
>>> irb(main):002:0> array[0]
>>> =3D> "first"
>>> irb(main):003:0> array[-1]
>>> =3D> "third"
>>>
>>>
>>>
>>> On 21 November 2013 17:52, Chris Hulan <chris.hulan / gmail.com> wrote:
>>>
>>>> looking at the code, you are adding 'X" to the adjacent cells when an
>>>> 'X' is found in a given cell,
>>>> but what is the expected behaviour when a 'X' is found on an edge?
>>>>
>>>>
>>>> On Thu, Nov 21, 2013 at 2:30 PM, Ronny Amarante <lists / ruby-forum.com>=
wrote:
>>>>
>>>>> Hi guys, i don't understand why this happen. Exist another way to use
>>>>> math expression in arrays?
>>>>>
>>>>> expected: [[" ", "X", "X", "X", " ", "X", "X", "X"], ["X", "X", "X",
>>>>> "X", " ", " ", "X", "X"], ["X", "X", "X", "X", "A", " ", " ", "A"],
>>>>> ["X", "X", "X", " ", " ", " ", " ", " "], ["X", "X", "X", " ", " ", "
>>>>> ",
>>>>> "A", " "], [" ", "X", " ", "A", " ", " ", " ", " "], [" ", " ", " ", =
"
>>>>> ", " ", " ", " ", " "]]
>>>>>      got: [[" ", "X", "X", "X", " ", "X", "X", "X", "X"], ["X", "X",
>>>>> "X", "X", " ", " ", "X", "X"], ["X", "X", "X", "X", "A", " ", " ",
>>>>> "A"],
>>>>> ["X", "X", "X", " ", " ", " ", " ", " "], ["X", "X", "X", " ", " ", "
>>>>> ",
>>>>> "A", " "], [" ", "X", " ", "A", " ", " ", " ", " "], [" ", " ", "X", =
"
>>>>> ", " ", " ", "X", "X"]] (using =3D=3D)
>>>>> ./testes_spec.rb:104:in `block (2 levels) in <top (required)>'
>>>>>
>>>>>
>>>>> The code is here:
>>>>>
>>>>> (def Expande)
>>>>>
>>>>>
>>>>> https://bitbucket.org/ronnyamarante/nuvem-de-cinzas/src/dea63a21e63b5=