Tudo bem.
Sua cabeça deve estar girando por causa de todas essas voltas, isso é uma piada muito ruim.
Mas eu achei engraçado porque estou gravando há horas e acho que estou ficando meio
maluco.
Portanto, este será meu último vídeo do dia agora em diante, é claro, mas vamos fazer
um pequeno exercício divertido agora.
Eu chamo todos os exercícios são divertidos.
Obviamente sou tendencioso, mas este é especialmente divertido.
Por que vamos fazer.
Bem, vamos simular o que um computador faz quando, quando temos algo como uma interface gráfica de
usuário, um computador é capaz de exibir, digamos, até mesmo uma imagem aqui.
Direito.
Eu posso ver o robô aqui.
Eu posso ver o mouse.
Esta é uma interface gráfica do usuário.
Eu vejo fotos.
Eu vejo imagens na minha tela, esses pixels na minha tela, e posso controlá-los.
Bem, vamos criar uma versão básica disso para mostrar como um computador funcionaria apenas com o
que aprendemos até agora, usando loops e lógica condicional.
Então o que nós vamos fazer?
Bem, este é o exercício e você pode conferir o Reppel aqui ou pode recriá-lo ou novamente neste vídeo,
você deve ter recursos anexados para que possa brincar com ele sozinho.
E o que eu quero que você faça é dar uma olhada nesta lista de listas.
E toda vez que você encontrar um zero, quero que mostre na tela aqui um espaço vazio.
Porque um zero em um computador não denota nada, certo, queremos um espaço em branco na tela.
No entanto, quando vejo um, quero simular um pixel exatamente aquele minúsculo ponto em nossos computadores que pode estar cheio
de cores.
Pode ser verde.
Pode ser azul.
Pode ser laranja.
Mas, para o nosso caso, eu queria ser uma estrela.
E usando isso, quero que você crie um programa que tire essa foto que digamos que está em
nosso banco de dados ou no disco rígido de nosso computador e a exiba na tela usando espaço ou multiplique.
E tudo que eu quero que você faça é quando eu clicar em executar, quero que você exiba essa imagem bem aqui.
Tudo bem.
Este é um pouco difícil e estou deixando você descobrir por conta própria.
Mas acredite em mim, você aprendeu todas as ferramentas necessárias para fazer isso.
Pausa.
Vídeo.
Dê uma chance.
Caso contrário, vou mostrar como isso é feito.
Portanto, a primeira coisa que gosto de fazer é pensar no que estou prestes a fazer.
Quero ter certeza de que temos um plano em mente.
Vou comentar primeiro e dizer, bem, definitivamente queremos iterar sobre a imagem.
Certo, então vamos fazer algum tipo de iteração aqui, então esse é o número um.
E aqui, quero dizer que se for um zero, quero imprimir um espaço vazio.
E se for um.
Eu quero imprimir.
Uma estrela.
Tudo bem, então esse é o plano.
OK, isso não deve ser muito difícil, na verdade, antes de começar, para que isso funcione, você precisa
pesquisar no Google um parâmetro especial ou opção especial que possa fornecer à função de impressão.
E, de fato, a função de impressão que você precisa adicionar ou a opção que você precisa adicionar
é este e.
Opção, e se rolarmos para baixo, não é exibido muito bem, mas você pode ver aqui a string anexada após
o último valor.
Portanto, o padrão quando imprimimos algo é uma nova linha.
Mas, idealmente, podemos não querer uma nova linha.
Então, quando isso acontecer, talvez você precise usar este e.
Opção agora eu sei que deixei bem vago, quero que você pratique pesquisando isso no Google e descobrindo
a partir do seu erro, você terá um bug ao criar este código,
ao tentar exibir esta informação, mas tente resolvê-lo usando as ferramentas que você tem para resolver problemas.
Tudo bem, chega de conversa, vamos ao que interessa.
Portanto, a primeira coisa que quero fazer é iterar sobre a imagem, direi para imagem na imagem porque,
bem, esta é uma imagem bem aqui.
Esta é a imagem, mas está dentro de uma lista porque podemos ter várias imagens.
E então vou repetir mais uma vez esta lista individual.
Então, mais uma vez, preciso fazer um loop for.
E desta vez vou dizer quatro pixels porque cada um disso é um pixel.
Na imagem, então este é um loop for aninhado.
Agora, vou adicionar uma condicional e dizer se.
Pixel.
É igual a um.
Então eu vou.
Imprimir.
Uma estrela.
De outra forma.
Eu vou imprimir.
Uma string vazia.
Bem, talvez não vazio, certo, porque queremos um espaço, um espaço em branco na imagem.
Tudo bem.
Então, vamos ver se isso funciona.
Se eu clicar, corra.
Hmm.
Não é exatamente por isso que eu queria.
Eu quero uma imagem clara aqui, mas estou colocando as coisas em uma linha e lembre-se, esse era o pequeno truque onde
uma impressão, toda vez que ela é impressa, ela cria uma nova linha.
O padrão, novamente, se fecharmos isso, você verá.
Esse final é igual a esta sequência de escape da nova linha, então podemos mudar isso simplesmente dizendo.
Estrela, vírgula e depois direi para o final, não quero uma linha nova, só quero.
Bem, uma string, mas uma string vazia.
E o mesmo aqui.
Sim, vírgula.
E se eu clicar em executar.
Tudo bem, está melhorando um pouco, mas agora tenho um problema de que não temos linhas
novas.
Tudo está em uma linha.
Hmm.
Isso não é bom.
Como podemos resolver isso?
Bem, idealmente, no final deste primeiro loop para onde vamos apenas a imagem ou a linha na imagem, no
final deste, criamos uma nova linha aqui.
Direito.
Então, novamente, olhando para o recuo, não quero uma nova linha em cada pixel.
O que tivemos da primeira vez, mas também quero acrescentar uma linha entre as listas de Rose.
Então, talvez um nome melhor para isso seja linha e imagem e aqui vou adicionar o final desse loop for, então, depois
de terminarmos de fazer o loop por toda a linha.
No final aqui, vou imprimir.
Uma linha vazia, mas lembre-se, o padrão será uma nova linha.
Então, novamente, uma string vazia, será padronizada para uma nova linha e ainda teremos esse
código se eu executar isso.
Oh, recebo um erro porque a imagem não está definida porque acabei de alterar isso para uma linha,
então vamos fazer uma linha aqui.
Clique, corra.
E olha só, nós temos nossa linda árvore de natal, se você não acha que isso é lindo, é o
melhor que pude.
Mas esta é uma árvore de Natal.
E finalmente temos um display, usamos Loop's, usamos lógica condicional e usamos um
pouco de Googling para descobrir, ei, precisamos dessa opção agora.
Nosso código funciona, mas quero fazer algo melhor aqui.
E no próximo vídeo, quero limpar um pouco esse código e cobrir um tópico muito importante quando se trata
de programação.
Vou ver nesse, tchau tchau.