1 of 52

2026

Aula 08

Introdução à Lógica de Programação

Turma: Intermediário

2 of 52

O que é lógica de programação?

  • Conjunto de regras e conceitos básicos que precisamos aplicar para criar programas a serem lidos e interpretados pelo computador
  • É uma habilidade muito importante!
  • Sem ela, desenvolvemos soluções pouco eficientes e de difícil compreensão
  • Para darmos os nossos primeiros passos na programação, usaremos a ferramenta Scratch para aprender esses conceitos básicos!

3 of 52

O que são algoritmos?

  • Sequência lógica e finita de passos para realizar uma tarefa ou resolver um problema
  • Características importantes:
    • O número das instruções não pode ser infinito
    • Quando executamos um programa com as mesmas entradas, a saída deve ser a mesma (em cenários específicos isso pode mudar)
    • Um programa não pode ter mais de uma interpretação possível

4 of 52

O que são algoritmos?

Algoritmo

Problema

Solução

?

?

?

?

?

?

5 of 52

O que são algoritmos?

  • Você consegue pensar em um exemplo do dia a dia em que a noção de algoritmo é aplicada?
  • Podemos pensar em:
    • Receita de bolo
    • Trocar a lâmpada de casa
    • Se arrumar para o trabalho
  • São todas tarefas em que já temos um modelo mental (organizado em etapas) de como executá-las!

6 of 52

Receita de bolo

Ingredientes :

  • 3 ovos
  • 2 xícaras (chá) de açúcar
  • 3 xícaras (chá) de farinha de trigo
  • 1 xícara (chá) de leite
  • 1/2 xícara (chá) de óleo
  • 1 colher (sopa) de fermento em pó

Instruções

  • Pré-aqueça o forno a 180°C
  • Unte uma forma de bolo com manteiga e farinha
  • Coloque no liquidificador os ovos, o açúcar, o leite e o óleo.
  • Bata os ingredientes no liquidificador por aproximadamente 5 minutos, até obter uma mistura homogênea
  • Adicione a farinha de trigo e o fermento à mistura
  • Bata novamente, agora por apenas 1 minuto, até tudo estar incorporado
  • Despeje a massa na forma que foi untada
  • Leve ao forno por cerca de 40 minutos
  • Retire o bolo do forno, espere esfriar e desenforme

7 of 52

Quais conceitos aprenderemos?

  • Variáveis
  • Condicionais
  • Laços de repetição
  • Escopo

8 of 52

O que é o ?

  • É uma linguagem de programação visual
  • Foi criada em 2007 para auxiliar no ensino de programação de forma simples e divertida
  • Muito usada para criar animações, jogos e histórias interativas
  • Todo o código (algoritmo) é construído a partir de blocos

9 of 52

Acessando o

  • Na barra de pesquisa, digite “Scratch” ou clique neste link: https://scratch.mit.edu/
  • Clique em “entrar” e adicione o nome de usuário e senha informados pelo professor da sala

10 of 52

Criando um projeto

  • Clique em “criar” e, no título, adicione seu nome

11 of 52

Visão geral do ambiente

Onde pegaremos os blocos de código

Visualização

Imagens e cenários

Área de desenvolvimento

12 of 52

O que vamos desenvolver

  • Você já ouviu falar na brincadeira “pedra, papel tesoura”?
  • Ela é formada por dois jogadores, em que cada um deve escolher entre pedra, papel ou tesoura
  • Cada um deve falar sua escolha e avaliar o resultado:
    • Papel ganha da pedra
    • Tesoura ganha do papel
    • Pedra ganha da tesoura
    • Se forem iguais, empate!

13 of 52

Preparando o ambiente

  • Antes de iniciarmos, vamos organizar o nosso projeto
  • Comece removendo o gato clicando na lixeira ao seu lado
  • Depois, confirme a exclusão

14 of 52

Preparando o ambiente

15 of 52

Preparando o ambiente

  • Em “Fantasias”, clique em “Carregar fantasias” e adicione as imagens papel.png e tesoura.png

16 of 52

Preparando o ambiente

  • Altere o nome do ator para mao1

17 of 52

Iniciando nosso programa

  • Em Eventos, selecione e arraste o elemento “Quando bandeira verde for clicado”
  • Este bloco será responsável por executar todo o nosso código quando iniciarmos o programa

Dica: durante a aula, use CTRL+S para salvar seu projeto sempre!

18 of 52

O que é são variáveis?

  • São símbolos que podem representar diferentes valores em diversas situações
  • Na programação, podemos usar variáveis para guardar números, textos, conjuntos de valores e resultados de verdadeiro ou falso (conhecidos como booleanos)

19 of 52

O que é são variáveis?

O que os valores abaixo representam?

100

“UFPR”

20

Eles podem ser qualquer coisa…

20 of 52

O que é são variáveis?

Muito mais fácil de compreender, não?

peças de carro = 100

universidade = “UFPR”

idade = 20

21 of 52

Criando uma variável

  • Em Variáveis, clique em “Criar uma variável”
  • Dê o nome de contador1
  • Essa variável será responsável por fazer o efeito de contagem (1, 2, 3) do nosso jogo, deixando-o com um “suspense” antes de mostrar o resultado

22 of 52

Criando uma variável

  • O contador1 iniciará em 0 e terá seu valor alterado ao longo do tempo
  • Para iniciá-lo como 0, selecione o bloco “Mudar contador1 para 0” para o nosso código

23 of 52

Laços de repetição

  • Imagine que você tem uma variável e o valor dela precisa ser modificado ao longo do tempo
  • Uma forma de resolver isso, é criar um código (ou bloco) toda vez que ela precisa mudar
  • Mas isso não é interessante!

24 of 52

Laços de repetição

  • Podemos automatizar esse processo utilizando uma estrutura de repetição, como while (enquanto) ou for (para)
  • No while, definimos uma condição específica e, enquanto ela não for atingida, realizamos uma certa tarefa
  • No for, indicamos um limite de parada. Então a repetição vai acontecer até que sejam executadas uma quantidade específica de vezes

25 of 52

Laços de repetição

  • Para aplicar aquela ideia de “incrementar” o contador ao longo do tempo, precisaremos de um laço de repetição
  • Vai funcionar assim:
    • O contador começa em 0
    • Aumenta para 1
    • Aumenta para 2
    • E assim por diante…

26 of 52

Adicionando um laço de repetição

  • Em Controle, selecione e arraste o bloco “Repita 10 vezes”
  • Altere o valor “10” para “3”
  • Dentro da caixa de repita, adicionaremos toda a lógica do código que precisa ser repetida

27 of 52

Adicionando um laço de repetição

  • Primeiro, vamos em Variáveis e adicionaremos o bloco “adicione 1 ao contador1”
  • Em Aparência, pegaremos o bloco “diga Olá”
  • Esses dois blocos precisam estar dentro do repita!

Vamos ver o que acontece clicando na bandeira verde?

28 of 52

Adicionando um laço de repetição

  • Observe que a variável contador muda bem rápido no canto da visualização
  • Precisamos fazê-la demorar um pouco mais de tempo
  • Em Controle, arraste o bloco “espere 1 seg” para dentro do repita

Vamos ver o que acontece clicando na bandeira verde?

29 of 52

Adicionando um laço de repetição

  • Agora conseguimos ver o valor trocando!
  • Só falta um detalhe: fazer com que o balão “Olá” diga o número do contador atual
  • Para isso, vá em Variáveis, selecione o contador1 e coloque dentro do bloco “diga”

Vamos ver o que acontece clicando na bandeira verde?

30 of 52

Adicionando um laço de repetição

  • Agora, precisamos trocar as imagens enquanto a brincadeira ocorre
  • Em Aparência, selecione e arraste o bloco “Mude a fantasia …”
  • Coloque-o dentro do bloco repita e após adicionar 1 ao contador

Vamos ver o que acontece clicando na bandeira verde?

31 of 52

Adicionando um laço de repetição

  • A imagem ainda não altera sozinha
  • Para isso, precisamos mudar a fantasia atual a cada laço da repetição
  • Como fazer isso?

32 of 52

Adicionando um laço de repetição

  • Cada imagem tem um número associado a ela
  • Então, podemos fazer um “sorteio” a cada iteração para mudar a imagem atual

33 of 52

Adicionando um laço de repetição

Vamos ver o que acontece clicando na bandeira verde?

  • Em Operadores, selecione o bloco “número aleatório entre 1 e 10”
  • Coloque o bloco dentro de “mude a fantasia”
  • Troque os valores para 1 e 3

34 of 52

Escopo

  • Em um código, existem coisas que ocorrem dentro do laço de repetição e fora dele também
  • Cada região específica do nosso código terá seu próprio escopo
  • O laço de repetição tem seu próprio escopo, por exemplo

  • Depois da contagem, queremos escrever qual foi o símbolo gerado (pedra, papel ou tesoura)
  • Isso precisa acontecer fora do laço, senão daremos a resposta do resultado “antes da hora”

35 of 52

Trocando de escopo

  • Em Aparência, pegaremos o bloco “diga”
  • Dentro dele, colocaremos “fantasia nome”
  • Isso será adicionado depois do laço de repetição

Vamos ver o que acontece clicando na bandeira verde?

36 of 52

Trocando de escopo

  • Para tornar o resultado uma surpresa, podemos repetir o bloco que seleciona uma fantasia de forma aleatória
  • Ele também vai estar fora do laço

Vamos ver o que acontece clicando na bandeira verde?

37 of 52

Vamos adicionar a outra mão?

  • Primeiro, vamos em Variáveis
  • Criaremos as seguintes variáveis: contador2, fantasia1 e fantasia2

38 of 52

Vamos adicionar a outra mão?

  • Em Variáveis, arraste o bloco “mude … para 0” para o código
  • Troque contador1 por fantasia1
  • Troque o 0 por “fantasia número”

39 of 52

Vamos adicionar a outra mão?

  • Duplique a mao1 e dê o nome de mao2

40 of 52

Vamos adicionar a outra mão?

  • Cada ator (mão) terá seu próprio bloco de código
  • Na mao2, troque o nome da variável contador1 para contador2 e fantasia1 para fantasia2

41 of 52

Condicionais

  • Para finalizar o nosso jogo, quero que o fundo mude quando houver um empate entre os jogadores
  • O que precisamos fazer para aplicar isso?

42 of 52

Condicionais

  • São caminhos diferentes que podemos seguir, dado um critério que definimos, por exemplo:
    • Se acontecer um empate entre os jogadores, mude a cor de fundo do cenário
    • Caso contrário, mantenha o mesmo fundo

43 of 52

Trocando o cenário

  • Clique na região de cenários

44 of 52

Trocando o cenário

  • Em “Cenários”, clique para selecionar um novo. Escolha dois!

45 of 52

Trocando o cenário

  • Na parte do código, arraste e em Eventos, selecione e arraste o elemento “Quando bandeira verde for clicado”
  • Vá em Aparência e arraste o bloco “Mude o cenário para…”

46 of 52

Trocando o cenário

  • Volte para o ambiente da mao1
  • Em Controle, selecione e arraste o bloco “se…então”
  • Em Operadores, arraste o bloco com sinal de igual (=) para dentro do bloco “se...então”

47 of 52

Trocando o cenário

  • Em cada um dos espaços em branco, coloque as variáveis fantasia1 e fantasia2

48 of 52

Trocando o cenário

  • Em Aparência, selecione e arraste o bloco “mude o cenário para …”
  • Nas opções, escolha a sua segunda opção de cenário

49 of 52

Trocando o cenário

  • Observe que, somente no empate, o fundo do nosso programa é modificado!

50 of 52

Revisando…

  • Onde aplicamos cada um desses conceitos em nosso jogo?
    • Variáveis
    • Condicionais
    • Laços de Repetição
    • Escopo

51 of 52

Revisando o projeto

  • Caso queira ver o projeto pronto, acesse o link a seguir: https://scratch.mit.edu/projects/1234377543/

52 of 52

Obrigado!

Obrigado!

pet.inf.ufpr.br

pet@inf.ufpr.br

@petcompufpr