[Música] Olá pessoal bem-vindos e bem-vindas ao nosso curso de pensamento computacional esse curso a gente vai aprender uma série de conceitos conversar sobre uma série de ideias Muitas delas a gente já tem a gente vai só trazer para o ambiente aí de Tecnologia a gente aqui vai perceber que o computador não pensa quem pensa somos nós que damos ordens para ele mas o objetivo desse curso não é sair aprendendo a programar o objetivo Desse nosso curso é perceber que muitas das coisas que a gente faz no dia a dia a gente já se preocupa em
fazer bem feito de uma maneira que a gente possa replicar que a gente possa fazer de modo eficaz eficiente a gente vai continuar com alguns conceitos e a gente vai conversando sobre isso durante as aulas do curso durante o material que vocês têm disponíveis tá bem material que vocês têm disponível no ava da Universo vou aqui começar com a gente com esse nosso roteiro né esse nosso roteiro eu vou contar para vocês a história da minha joaninha joaninha robô que é o meu aspirador de pó é de verdade ela é minha mesmo a gente vai
contar um vídeo sobre ela a gente vai discutir um pouco detalhamento desse vídeo né vou discutir uma animação que eu fiz para vocês e continuem isso O que tem a ver com o pensamento computacional tá bom então agora a gente vai tocar o vídeo para vocês olha só essa daí é a minha Joaninha Eu chamo de joaninha porque é vermelho e preto tem uma bolinha preta em cima da carcaça vocês estão vendo que ela tá rolando ali passeando na minha sala nesse vídeo fui eu que gravei hein atenção esse eu quero que vocês observem que
ela Tá passeando batendo ó ela bate e vira vocês estão vendo bate e vira ela vai até a porta Agora vai bater virar ela encontra um degrau percebeu que ela virou no degrau ela não bateu não Ela percebeu o degrau agora ela bate e vira tá E que que tá acontecendo ela tá enfrentando obstáculos aí a cada ação que ela Tá passeando né Ela Tá passeando na sala ela tem umas vassourinhas na frente que estão varrendo vocês podem prestar atenção aí no vídeo e ela está fazendo o serviço dela tem um programa lá dentro A
Joaninha é um robô né E ela tem um programa que está embarcado lá dentro vocês podem ter ouvido esse termo né programa marcado é esse que tá nesse preço a Honrar esse equipamento que é o robô que tá dedicado a esse robô esse equipamento ele tem ali o seu sensores ó aquela parte preta na frente é um sensor de batida e agora que ela vai ali na escada tá vendo o degrau ela tem um sensor de buraco um sensor de abismo que eu chamo né ela percebe que tem o abismo ela bate e volta né
vocês vão ver que cada batida dela ela dá uma ela dá uma marcha ré ela dá marcha ré um pouquinho e vira ó tu perceberam ela vai tum e volta com a marcha ré eu vejo é um programa que tá lá dentro o que que é um programa é uma sequência de comando de instruções que alguém colocou lá dentro Eu não tenho milagre nenhum não tem mágica nenhuma Alguém escreveu uma série de regras numa linguagem que esse robô entenda né ele entende é esse conjunto de regras e agora a gente coloca dentro do robô lá
dentro e ele sai fazendo isso até a bateria acabar tudo bem Depois vocês assistem de novo o vídeo tá disponível no site do ava tá disponível na apostila no material de texto que tá lá para vocês e vocês podem se divertir com ele tá agora eu vou conversar um pouco com vocês como é que é essa história então que é o problema da Joaninha né eu boto chama Joaninha mesmo tá Qual que é o problema da Joaninha a Joaninha tem uns problemas para resolver né ela tem que aspirar o chão mesmo na presença de obstáculos
Não é esse o problema dela é né então vamos lá como é que ela resolve esse problema né aí aqui que a gente está trazendo o tal do pensamento computacional computação assim como várias outras áreas a gente tem que resolver problema né e a gente tá aqui para resolver o problema da Joaninha neste momento não como é que ela resolve esse problema vamos pensar vamos observar ela tá o tempo todo ó avançando e aspirando avançando e expirando porque quando você liga ela desliga já o aspiradorzinho dela e vai liga a vassourinha vai então conforme ela
tá avançando ela tá respirando não é isso né às vezes ela dizia de obstáculos quando ela encontra obstáculo então o trabalho dela tá o tempo inteiro avançando aspirando de vez em quando ela deseja de obstáculos bom Quais são as ações que ela faz então a gente pode ver de uma outra maneira né que o tempo todo ela tá aspirando avançando aspirando avançando aspirando é do tempo todo também ela desviando de obstáculos quer dizer ela tá avançando esperando se encontrar obstáculo se encontrar obstáculo quanto ela tá respirando a desistiu do obstáculo agora Talvez o robô comece
a entender um pouquinho melhor o que está acontecendo a gente vê aqui que a gente tem nessa nova versão em caso de batida ou de abismo desviar vocês lembram no vídeo que ela ou batia ou tinha Abismo ela podia bater no sofá bater na porta ou tinha aquele Abismo degrau da escada então para ela joaninha é se eu falar para ela em casa de batida ela não entende o que ela entende são dois sensores que ela tem ela tem o sensor de batida que ela bate aquela parte preta ou sensor de abismo que se ela
tiver passeando por aqui ela percebe que vai cair ela volta eu agora eu tô começando a chegar a falar um pouco mais a linguagem da joaninha na realidade aqui ó aspirar e falar que em caso de batida você dá marcha ré e dá uma voltinha para trás me lembro que a gente que ela quando ela batiada uma marcha ré virava não era isso ela não percebe depois você assiste o vídeo de volta você vai ver tá eu vejo o que que eu tô preocupado aqui eu tô tirando isso de um vocabulário que a gente está
chegando agora Falar o que vocabulário é esse que a Joaninha entende vocês não sabem nem eu nunca programei a Joaninha mas eu tô observando e tô percebendo um pouco mais detalhe é uma forma mais detalhada possível que ela tá fazendo ali porque porque eu sei que ela é um robô vocês também sabem que ela roubou e ela é um robô burrinho burrinho burrinho como qualquer computador é burro burro burro ele só vai fazer o que a gente manda e tem um programa lá dentro e esse programa tá fazendo isso aqui ó mandando ela fazer repetir
o tempo todo essa que tá esse aí o tempo todo que a gente chama de lúpido de repetição né repete repete repete repete repete certo repete o que o que tá aqui dentro essa experiência de comandos essa sequência de avançar aspirar em caso de batida tem outra sequência da marcha ré vira para direita né E vocês estão vendo que ali no meio tem um teste né em caso de batido O Abismo faça esses dois comandos que estão embaixo senão continue o quê repetindo o tempo inteiro avançar aspirar é isso que nós estamos fazendo né É
isso que ela está fazendo nós estamos observando para saber né Qual que é o vocabulário dela Ah mas eu não sabia disso né aqui a gente tinha dar marcha ré virar para direita né deixou vamos ver aqui o qual que é a próxima que eu coloquei eu não lembrava mais vamos lá pensamento computacional é o que eu quero comentar para vocês agora lembra que é o começo do nome deste curso Nossa tá a gente tá querendo aqui ó decompor esse problema é o problema que a Joaninha tinha que resolver né reconhecer padrões Olha só abstrair
tarefas e explicar o algoritmo super chique a gente vai bater nessa tecla essas quatro teclas aí inúmeras vezes durante o curso o que a gente quer dado um problema detalhar aquele problema mais mais detalhadamente possível de maneira que a gente possa dar para um robô fazer é que nem você chegar para alguém que nunca cozinhou na vida e fale frita um ovo para mim Que tal tem gente que você sabe que tem gente que não sabe fritar ovo né Aí você fala para o ovo na frigideira Será que essa pessoa vai lembrar de quebrar o
ovo antes de botar na frigideira Esperamos que sim certo mas se fosse um robô ele não ia saber que tem que fritar ovo Ele ia jogar o ovo com gás tudo porque alguém tem que ensinar para ele tem que fritar ovo a gente nasceu sabendo porque a gente viu um monte de gente durante a nossa vida que cozinhando e quebrando ovo antes de botar na frigideira Então dependendo de quem a gente tá mandando em quem a gente tá programando a gente tem que detalhar as instruções o mais detalhadamente possível a gente tem que saber o
que aquela pessoa sabe o que aquela pessoa entende o que que ele roubou sabe o que que aquele carro sabe Qual que é o vocabulário que ele entende é lá que a gente tem que chegar é lá que a gente chega nesse passo 4 explicitado o algoritmo que resolve o problema para chegar lá a gente observa o problema como a gente fez com a Joaninha a gente decompõe o problema lembra que a gente saiu de avançar aspirar e em caso de batida desvie E chegamos nesses vários Passos aqui nesse o tempo todo nessa sequência de
aspirar de avançar aspirar em caso de batida da marcha ré e vire para direita né então a gente foi quebrando é ai que padrões que a gente tem ah Veja a gente tem sequência lá a gente que padrões ela tem lá vai para frente volta ela faz o mesmo movimento de bater ela faz o mesmo movimento de dar marcha ré e voltar seja com batida ou seja com seus batido ou seja com sensor de abismo né então a gente reconhece esses padrões ali a gente usa esses padrões para ajudar a descrever o problema a receita
de bolo receita de bolo mesmo receita de fritar ovo já que ficou essa aí e aí depois que a gente reconhece os padrões a gente Abstrai aí essas tarefas porque por exemplo que é o caso da Joaninha o que que eu chamo de abstrair as tarefas faz diferença se ela tá na sala da minha casa ou na sala da sua casa ou se ela tá aqui no estúdio ela vai bater e vai virar Não interessa para ela tá faz diferença se a Joaninha tá com uma carcaça Vermelha ou uma carcaça amarela também não faz tá
então o programa que eu tô fazendo ele é independente da cor da Joaninha é independente do ambiente do modelo da sala do tipo do sofá se tem um degrau pequenininho como que tinha do meu lá no meu apartamento ou se são vários degraus como tem aqui no estúdio né a gente Abstrai isso a gente quer resolver o problema de modo genérico então no fundo é isso que a gente quer fazer com o tal do pensamento computacional o que que é esse pensamento computacional explicitamente né são esses quatro passos que eu acabei de colocar ele né
decompor o problema reconhecer os pais os padrões que que é padrão Poxa vida toda vez que eu eu posso reconhecer esse padrão e tomar cuidado com ele né aprender então é observar e ver quando que as coisas estão se repetindo de usar isso a meu favor na descrição do problema porque se eu uso várias vezes aquilo se aquilo acontece eu consigo rezar né é como a receita do você vai fritar três ovos né eu você não comer frita um ovo depois você pega repete o comando de fritar o segundo ovo e repete o comando fritar
o terceiro ovo né você não precisa começar tudo de novo e aí o algoritmo continua então esses descrições aqui estão para gente vocês se olharem a gente vê conversar sobre isso né veja que a gente tá ao decompor o problema a gente tá decompondo o problema é menores problemas e a solução isso é importante a gente quebra os problemas né em várias partes mas a solução toda é a composição daquilo né eu não vou pegar só uma parte resolver né eu vou cozinhar um jantar eu faço ó tem a salada o prato principal e a
sobremesa então tá então cada um faz uma coisa só que eu pego Só salada e vou embora não acabei o jantar eu tenho que fazer todas as coisas primeiro então decompor o problema significa que eu vou olhar Quais são as tarefas que eu tenho que fazer e fazê-las de modo focado cada uma delas mas a resolução do problema é o todo né o dividir para conquistar que a gente conhece também com esses nomes né reconhecer padrões a gente identifica padrões né que estão numa parte do problema e a gente também identifica padrões que estão em
outros problemas por quê Porque a gente sabe resolver um monte de problemas na vida se a gente sabe consegue abstrair observar que aquilo lá se uma determinado problema que eu tenho ocorrem outro eu consigo transferir aquele conhecimento para cá né Essa é uma das coisas que a gente faz a gente aprendeu a fazer né a gente usa isso direto desde que nasceu os outros dois pilares são aqueles lá de abstrair tarefas e seus dados de entrada né Isso quer dizer que o lixo as tarefas necessárias para resolver o problema e os dados de entrada necessários
também são abstraídos então é uma obstração que a gente fez é em caso de obstáculo desvia independente do obstáculo abstrata que é obstáculo parede do tipo batido obstáculo que Observe eu Abstrai O que é um obstáculo que eu identifico como batida ou distraio com obstáculo que eu identifico com o sensor da frente que eu desço com sensor de queda né e depois que eu fiz isso eu faço o que explicito o algoritmo o algoritmo que resolve o problema esse algoritmo tô ilustrando no caso da Joaninha que é um robô que entende tem um vocabulário que
entende essas ações esses comandos que eu tô dando se eu fosse ensinar o robô a fritar ovo né a gente teria que saber qual que é vocabulário que ele sabe mas a gente tem que conhecer aquele vocabulário daquela pessoa ou daquela daquele comando que a gente tá aquele comandado que a gente está mandando que a gente tá dando instruções para tá vamos continuar aqui né então após essa nossa definição né uma das definições que a gente pode colocar de algoritmos Eu gosto bastante dessa porque elas são parecidas no meu são não variam tanto assim elas
são muito parecidas Mas a gente pode dizer então que o algoritmo é uma sequência de instruções não ambíguas para resolver um problema de forma produzir em período de tempo finito a saída correspondente para qualquer entrada os nossos últimos dois pilares são aqueles do abstrair a tarefa e seus dados né e abstrair a entrada e saída como a gente fez com em caso de obstáculo abstraindo tanto a batida quanto o sensor de abismo e agora a gente abstraia a gente Explicita o algoritmo que resolve o problema a gente vai voltar é essa definição em outras vezes
mas eu vou colocar aqui para gente o algoritmo é uma sequência de instruções não ambíguas para resolver o determinado problema e ele tem que resolver e produzir um período finito de tempo a saída correspondente a gente vai voltar nessa definição dá uma pensada antes eu vou colocar definição também de pensamento computacional que a gente vai voltar nela nas próximas aulas tá ele é um processo de pensamento envolvido na formulação de um problema e Na expressão de sua solução de tal forma que um agente humano ou computacional possa efetivamente resolvê-lo e olha só o que eu
preparei para vocês preparei uma animação essa animação aqui ó é a animação da Joaninha roubou que eu fiz para vocês que a gente clicando ali naquele link que está disponível para vocês Vocês conseguem chegar nessa tela É só botar a bandeira azul e olha minha Joaninha lá vocês estão vendo olha lá ela bate volta um pouquinho vira para direita e vai embora lá bate a lá tá vendo essa minha abstração da escada eu Abstrai para vocês a escada aqui na frente e as paredes e os móveis aqui do lado direito quer tocar de novo aperta
a bandeira Verde novamente Vocês estão vendo que a bateria ó vou começar de novo vou começar de novo vocês vão ver que a bateria que número começa Ó a bateria começou lá pelos 500 mais ou menos e aí ela tá baixando a cada bancadinha a cada movimento conforme a Joaninha tá se movimentando gastar bateria tá então eu vou deixar vocês com essa animação o link está lá toquem e a gente depois vai ver o programa que eu fiz para a gente fazer essa animação beleza até a próxima [Música] [Música]