< Return to Video

Os Artistas | Pense Como um Programador, Episódio 5

  • 0:23 - 0:28
    O dia está nascendo quando o trem
    de Ethic e Hedge chega à floresta.
  • 0:28 - 0:33
    Os aventureiros recuperaram
    o primeiro artefato, o "Node do Poder",
  • 0:33 - 0:37
    e chegaram à Floresta 198
    em busca do segundo.
  • 0:37 - 0:41
    Eles foram recebidos
    pela líder da colônia, Octavia.
  • 0:42 - 0:44
    Ela fundou um santuário
    de casas nas árvores
  • 0:44 - 0:47
    depois que os robôs libertaram
    todas as pessoas do trabalho.
  • 0:47 - 0:51
    Seria um refúgio no qual as pessoas
    se dedicariam às suas paixões,
  • 0:51 - 0:53
    ao artesanato e às suas realizações.
  • 0:53 - 0:55
    No início, elas fizeram isso.
  • 0:55 - 0:58
    Há alguns anos, as pessoas
    se esqueceram do essencial.
  • 0:58 - 1:01
    Elas abandonaram o artesanato
    e, em vez disso, apenas pintavam
  • 1:01 - 1:03
    e exibiam quadros delas mesmas,
  • 1:03 - 1:05
    repetidamente.
  • 1:05 - 1:08
    A localização do segundo artefato
    não é nenhum segredo:
  • 1:08 - 1:11
    ele está em uma torre,
    vigiada por uma guarnição de robôs,
  • 1:11 - 1:15
    em um abismo, e quem sabe
    quantas armadilhas mais existem lá.
  • 1:15 - 1:19
    Assim que a torre foi construída
    com o node em seu interior,
  • 1:19 - 1:23
    a comunicação humana no território
    entrou em colapso por toda parte.
  • 1:23 - 1:25
    Octavia tem procurado o artefato há anos,
  • 1:25 - 1:28
    mas, por mais que tentasse,
    as defesas da torre a impediam.
  • 1:29 - 1:33
    Para chegar até a torre,
    o grupo precisará de uma distração.
  • 1:33 - 1:35
    Octavia tem uma ideia:
  • 1:35 - 1:39
    distrair as pessoas,
    com um "vandalismo do bem".
  • 1:39 - 1:43
    Todas as pinturas dos residentes são
    quadrados de diferentes tamanhos,
  • 1:43 - 1:47
    todos formados
    por um número ímpar de pixels.
  • 1:47 - 1:49
    Os robôs assistentes recolhem
    os retratos prontos
  • 1:49 - 1:53
    e os penduram em lugares públicos
    para que todos os apreciem.
  • 1:53 - 1:57
    Hedge dispõe de pouco tempo
    para acessar as pinturas.
  • 1:57 - 2:03
    Se ele marcasse cada pintura com um "X",
    as pessoas culpariam os robôs assistentes,
  • 2:03 - 2:06
    criando exatamente a distração
    que o grupo precisa.
  • 2:06 - 2:09
    Não é tão fácil assim!
  • 2:09 - 2:11
    Hedge não pode simplesmente pintar um X.
  • 2:11 - 2:15
    O processador de pintura dele
    requer instruções bem específicas.
  • 2:15 - 2:17
    Considerando as pinturas
    como uma grade de pixels,
  • 2:17 - 2:21
    ele poderá preencher um pixel,
    ou um pequeno quadrado, de cada vez.
  • 2:21 - 2:25
    Ele pode avançar e dar
    giros de 90° sobre a tela,
  • 2:25 - 2:28
    mas não pode se mover na diagonal.
  • 2:28 - 2:33
    Como Ethic pode programar Hedge
    para que ele pinte um X em cada retrato?
  • 2:33 - 2:38
    [Uma pausa agora
    para que você descubra sozinho.]
  • 2:38 - 2:41
    [Regra 1] [Regra 2] [Regra 3]
  • 2:41 - 2:43
    Eis uma dica:
  • 2:43 - 2:46
    tente desenhar uma grade
    de quadrados como esta
  • 2:46 - 2:48
    e simular o caminho de Hedge sobre ela.
  • 2:48 - 2:51
    Quais padrões você pode encontrar
    para guiar Hedge?
  • 2:51 - 2:55
    [Uma pausa agora
    para que você descubra sozinho.]
  • 2:56 - 2:58
    O desafio aqui é criar
    um conjunto de instruções
  • 2:58 - 3:01
    que servirão para qualquer
    grade de quadrados.
  • 3:01 - 3:04
    Felizmente, uma das vantagens
    da programação
  • 3:04 - 3:07
    é a flexibilidade para solucionar
    não apenas um problema,
  • 3:07 - 3:10
    mas uma gama deles ao mesmo tempo.
  • 3:10 - 3:14
    É sempre útil começar com um caso
    e trabalhar em prol do coletivo.
  • 3:15 - 3:17
    Digamos que temos este quadrado.
  • 3:17 - 3:21
    Hedge pode medir o comprimento dos lados
    e armazenar o número como uma variável.
  • 3:21 - 3:26
    Agora, o que precisamos é um plano
    de como Hedge pintará um X,
  • 3:26 - 3:27
    pixel por pixel.
  • 3:27 - 3:32
    Há mais de uma resposta correta
    de como fazer isso; vamos verificar duas.
  • 3:32 - 3:33
    Primeira:
  • 3:33 - 3:36
    e se Hedge percorresse cada fileira,
    como uma máquina de escrever?
  • 3:36 - 3:38
    Se for uma pintura
    de nove pixels por nove,
  • 3:38 - 3:43
    deveria pular sete na primeira fileira,
    e então pintar novamente.
  • 3:43 - 3:47
    Na segunda fileira, pularia a primeira,
    pintaria, pularia cinco e pintaria.
  • 3:47 - 3:49
    E assim por diante.
  • 3:49 - 3:51
    O padrão aqui é que, para cada fileira,
  • 3:51 - 3:54
    os pixels pulados no começo
    aumentam em um,
  • 3:54 - 3:58
    e os pixels pulados no meio
    diminuem em dois.
  • 3:58 - 4:01
    As coisas se complicarão mais
    quando Hedge chegar ao centro.
  • 4:01 - 4:04
    Aqui, há uma fileira
    com apenas um pixel pintado.
  • 4:04 - 4:06
    Então, tudo se inverte:
  • 4:06 - 4:10
    o número de pixels pulados
    diminui em um à esquerda,
  • 4:10 - 4:14
    e aumenta em dois, no meio.
  • 4:14 - 4:17
    Dará certo se Hedge for instruído
    a fazer isso com uma série de loops,
  • 4:17 - 4:20
    e é uma solução ótima.
  • 4:20 - 4:23
    A principal desvantagem
    é que requer um boa dose de lógica,
  • 4:23 - 4:26
    saber o que fazer no meio,
    quando reverter o processo
  • 4:26 - 4:29
    e exatamente como revertê-lo.
  • 4:29 - 4:31
    Então, como devemos abordar isso
  • 4:31 - 4:35
    de modo que a lógica
    seja consistente, do início ao fim?
  • 4:35 - 4:40
    O ponto-chave é olhar para uma grade
    como uma série de quadrados concêntricos.
  • 4:40 - 4:43
    Cada quadrado segue o mesmo padrão:
  • 4:43 - 4:47
    pixels pintados nos cantos,
    e pixels sem pintura entre eles.
  • 4:47 - 4:50
    Então, se pudermos descobrir um modo
    de pintar um quadrado aninhado,
  • 4:50 - 4:55
    passar para o próximo e repetir,
    poderemos pintar todos eles.
  • 4:55 - 4:57
    É fácil pintar os quadrados
    das extremidades.
  • 4:57 - 5:00
    Comece em um lado e pinte o pixel.
  • 5:00 - 5:02
    Se chamarmos
    o comprimento do quadro de "N",
  • 5:02 - 5:07
    percorra os quadrados "N menos 1",
    pinte outro pixel e vire à direita.
  • 5:07 - 5:11
    Agora, faça tudo repetidamente.
  • 5:11 - 5:16
    Avance um pixel a menos,
    vire à direita, avance um pixel,
  • 5:16 - 5:19
    e Hedge estará no próximo
    quadrado concêntrico,
  • 5:19 - 5:22
    pronto para repetir todo o processo.
  • 5:22 - 5:28
    Cada quadrado é dois pixels menor
    que o anterior, em comprimento e largura,
  • 5:28 - 5:32
    e podemos seguir este padrão de espiral
    completamente até o centro,
  • 5:32 - 5:37
    com um loop e uma variável que indica
    a distância que Hedge deve voar.
  • 5:37 - 5:39
    Um desses métodos é melhor que o outro?
  • 5:39 - 5:41
    Realmente depende do que você valoriza.
  • 5:41 - 5:45
    A vantagem da espiral
    é a simplicidade de encontrar um padrão
  • 5:45 - 5:48
    e usar outra vez a mesma lógica
    do princípio ao fim.
  • 5:48 - 5:50
    A vantagem da abordagem
    "máquina de escrever"
  • 5:50 - 5:52
    é que é uma solução mais genérica,
  • 5:52 - 5:56
    que pode ser adaptada de modo mais simples
    para preencher um padrão.
  • 5:56 - 5:59
    Para o bem de Ethic,
    qualquer uma delas servirá.
  • 5:59 - 6:01
    Então, eis o que acontece:
  • 6:01 - 6:04
    Hedge rapidamente altera
    todos os retratos.
  • 6:04 - 6:09
    E, em pouco tempo, gritos aflitos
    surgem de toda a floresta.
  • 6:09 - 6:12
    A guarnição de robôs que vigia a torre
    abandona seus postos
  • 6:12 - 6:14
    para acalmar as pessoas inquietas,
  • 6:14 - 6:17
    e Ethic, Hedge e Octavia se esgueiram
  • 6:17 - 6:23
    e quase caem nas profundezas
    do desfiladeiro que os separa da torre.
Title:
Os Artistas | Pense Como um Programador, Episódio 5
Speaker:
Alex Rosenthal
Description:

Veja a lição completa: https://ed.ted.com/lessons/the-artists-think-like-a-coder-ep-5

Este é o quinto episódio de nossa série de animação “Pense Como um Programador”. Esta narrativa de dez episódios acompanha uma garota, Ethic, e seu amigo robô, Hedge, enquanto tentam salvar o mundo. Os dois embarcam em uma missão para reunir três artefatos e devem encontrar o caminho, passando por uma série de enigmas de programação.

Lição de Alex Rosenthal, dirigido por Kozmonot Animation Studio.

more » « less
Video Language:
English
Team:
closed TED
Project:
TED-Ed
Duration:
06:25

Portuguese, Brazilian subtitles

Revisions