Video Transcript
Pelo lado pessoal estamos de volta.
Só para terminar aqui, na esta aula nós vamos falar mais de pedaços de pedaços, mas vamos
aprender como percorrer pedaços de pedaços de novo, mas de maneira mais específica.
No passado nós aprendemos a percorrer um slice de slices, mas a gente só percorreu as linhas,
a gente não realmente percorreu, vamos dizer, percorreu os elementos específicos de cada
linha.
Então como é que a gente vai fazer isso?
A gente vai usar um loop aninhado, o nested loop, para poder percorrer cada elemento
de cada linha.
Isso vai envolver um loop dentro de outro loop.
Então vamos ter, por exemplo, a gente vai usar o for, uma variável de repetição i,
mas também vai ter outro for dentro do for, uma variável de repetição j.
Normalmente a gente usa as variáveis com a letra i e a letra j, quando a gente demonstra
esses tipos de loops.
Então vamos começar aqui.
Eu vou criar um novo arquivo, vou dizer matriz slice.go, eu vou só copiar esse código
aqui do tabuleiro, vou remover as coisas, eu só copio o código que a gente tinha antes
do tabuleiro e vou pacote main, portando fment.
Então vamos precisar de strings, eu vou remover strings, vamos tirar esse cara daqui, começar
de novo, temos o tabuleiro definindo aqui, pedaço de string, slice de slice.
Então a gente vai percorrer agora em vez de cada linha, a gente vai percorrer cada elemento
de cada linha individualmente.
Então a gente vai começar primeiro, vamos na hora de seguinte, primeiro você vai na
primeira linha e depois da primeira linha você vai percorrer primeiro elemento, segundo
e terceiro, depois está indo na primeira linha, vai para a segunda linha, percorre
primeiro, segundo e terceiro, depois que isso vai para a terceira linha, percorre primeiro
elemento da terceira linha, o segundo e terceiro.
Vamos fazer isso, então a gente vai fazer primeiro, vai percorrer as linhas, como a
gente percorre as linhas, a gente já aprendeu isso, vai dar o for e dois pontos igual, zero,
então we vai ser variável de repetição, vai corresponder a cada linha, então we menor
que o comprimento do tabuleiro, então we mais mais, com isso a gente vai poder acessar
o i de zero, um, dois, então se você quiser acessar a linha vai dizer tabuleiro, coxete
i, essa é a linha.
Legal, deixa aqui como comentário, barra a barra, só para a gente ter como referência
se lembrar que para acessar a linha a gente usa tabuleiro, coxete i, subi.
Legal, mas agora a gente está por exemplo com o tabuleiro no i, está no zero, a gente
tem esse cara aqui, como é que a gente percorre um pedaço, vetor, usando um loop, então a
gente vai fazer outro loop, a gente já tem esse cara, agora vamos fazer loop para pegar
esse elemento e esse elemento, for a variável que a gente usa normalmente quando a gente
tem um loop aninhado, nestred for loop, é o j para se referir a coluna, nesse caso
primeiro, segundo e terceiro, então vai começar do zero, porque é do zero também, vai até
onde?
Bem, vai de zero até o comprimento desse pedaço de swing, nesse caso comprimento desse cara
vamos fazer quanto?
Cota i, um, dois, três, bem, j menor que o link, de quem?
Como é que a gente se refere a essa linha aqui?
Tabuleiro, subi, então não se esqueça do coxete i, que essa é a linha, pense nisso
como a, b e c, você tem capturando por exemplo, se o i for um, vai capturar o b, tá, a gente
quer saber o comprimento do b, pronto, agora já está mais e mais, ele vai de zero, um,
dois, e quando bater no três, vai, condição vira falsa e não vai mais recortar o corpo
do loop, tá, legal, então temos a linha, mas como acessar o elemento de cada, o elemento
da linha?
Bem, se eu tivesse a variável chamada linha, eu acessaria o elemento usando quem?
O coxete j, dessa maneira aqui, se eu tivesse linha, esse cara dentro da variável chamada
linha, a gente só acessaria o coxete j, legal, você pode fazer isso se você quiser, deixa
como é exercício, mas, vê de fazer isso, eu vou só falar o seguinte, mas eu bem que
eu sei que linha é, é o que?
Tabuleiro, coxete i, então esse cara aqui que é a linha, então para poder pegar, a,
o elemento da linha é só se referir tabuleiro, coxete i, coxete j, tá, dessa maneira, e com
isso vamos dar o print, leão aqui para ver se realmente funciona o negócio, se a gente
percorrer o cada elemento da ordem, de cima, da esquerda, de cima para baixo, esquerda
direita, né?
Vamos lá, terminal, limpar, go run, matriz, reboteir, escrevi matriz em inglês, matrix,
ah, certo, vamos ver, então um elemento por linha, começando aqui da primeira linha,
primeira coluna, x, certo, segundo elemento da primeira linha, trás, terceiro, traz,
legal, segunda linha, primeiro elemento bola, x, bola, legal, terceiro, linha, primeiro
coluna, trás, segunda coluna, bola, terceira, coluna, x, bom, legal, então deu tudo certo,
a gente aprendeu como percorrer, estabeleir, de cima para baixo, esquerda para direita,
legal, mas agora te pergunto, será que dá para fazer isso e percorrer as, por exemplo,
eu quero percorrer as colunas primeiro, por exemplo, e ver de ser assim, assim e assim,
eu queria fazer percorrer assim, assim, assim, depois eu vou seguir no coluna, assim, assim,
assim, depois do terceiro, como é que faz isso? É um desafio para você, tá? Eu deixo
o meu exercício, depois você vai fazer isso, você poderia inverter as variáveis,
porque se você pensar no i como a linha e o j como coluna, você tem que começar a
dar onde? Você tem que começar a dar coluna para a primeira coluna, onde o j é zero,
você tem que percorrer para todo i, i zero, i um e dois, depois disso incrementa o j,
o j vai ser um, fixa o j do um e percorre i zero, i um e dois e finalmente fixa o j para
dois e percorre o zero, i um e dois, tá? Então por essa aula é só e até a próxima.