🚀 Bem-vindo ao laboratório

Aqui você pode estudar os conceitos e experimentar exemplos sem precisar instalar nada. O laboratório reúne Python, Arduino e criptografia.

🐍 Python
Variáveis, decisões, listas e repetições.
🤖 Arduino
Teste a lógica de LEDs, botões e semáforos.
🔐 Criptografia
Experimente cifrar e decifrar mensagens.
ESPAÇO PUBLICITÁRIOÁrea reservada para Google AdSense após a aprovação do site.

1. Primeiro passo — Acesse a Alura e o Google Colab

O primeiro passo é acessar sua conta da Alura e, junto com a atividade, utilizar o Google Colab para escrever e executar os códigos em Python.

Comece por aqui

  1. Acesse sua conta da Alura.
  2. Entre no conteúdo de Lógica de programação: fundamentos e desafios em Python.
  3. Quando a atividade orientar o uso do Google Colab, abra o Colab.
  4. Entre no Google Colab usando seu e-mail institucional @escola.
  5. Acompanhe a explicação e faça o código no Colab.
  6. Execute, teste e confira o resultado.
  7. Quando a atividade solicitar, envie corretamente o link do seu Google Colab na plataforma.
⚠️ Importante: o primeiro passo é entrar na Alura e utilizar o Google Colab em conjunto com a atividade, conforme a orientação apresentada. Não é necessário decorar o código: acompanhe a explicação, escreva, execute e teste.
Depois disso: siga para o item 2, “Preparando o ambiente”, e continue pelos demais conteúdos deste laboratório.

2. Preparando o ambiente

Agora que você já acessou a Alura e o Google Colab, vamos preparar o ambiente para começar a programar. O Google Colab permite criar uma página de código, escrever Python e executar o programa.

Como começar

  1. Confirme que você está no Google Colab.
  2. Verifique se está usando seu e-mail institucional @escola.
  3. Crie um novo notebook.
  4. Digite o código em uma célula.
  5. Clique no botão de executar da célula.
  6. Observe o resultado e teste mudanças no código.
Importante: nas atividades da Alura, acompanhe os vídeos e faça o processo no Google Colab conforme o professor orienta. Isso é importante para realizar corretamente e enviar o link solicitado.
ESPAÇO PUBLICITÁRIOÁrea reservada para Google AdSense.

3. Primeiros comandos

print()

print("Olá, mundo!")
Olá, mundo!

print() mostra informações na tela.

Texto e cálculo

print("Python é legal!")
print(5 + 5)
Python é legal! 10

Operações básicas

SímboloExemploO que faz
+8 + 2Soma
-8 - 2Subtração
*8 * 2Multiplicação
/8 / 2Divisão
//9 // 2Divisão inteira
%9 % 2Resto da divisão
O resultado aparecerá aqui.
% é especial: 9 % 2 = 1, porque 9 dividido por 2 deixa resto 1.
ESPAÇO PUBLICITÁRIOÁrea reservada para Google AdSense.

4. Variáveis

Variável é um espaço onde o programa guarda uma informação.

nome = "Lucas"
idade = 12
print(nome)
print(idade)
Lucas 12

Tipos básicos

str → textoint → inteiro float → decimalbool → True / False
TipoExemploUso
strnome = "Ana"Texto
intidade = 12Número inteiro
floataltura = 1.50Número decimal
boolestudando = TrueVerdadeiro ou falso
Clique em executar.

5. Funções

Uma função é um bloco de código criado para realizar uma tarefa. Podemos chamar a função quando quisermos.

def saudacao():
    print("Olá!")

saudacao()
Olá!

Função com parâmetro

def apresentar(nome):
    print("Olá,", nome)

apresentar("Bia")
Olá, Bia

Experimente

O resultado aparecerá aqui.
Ideia principal: criar uma função é como ensinar ao programa uma tarefa que ele poderá repetir quando for chamado.

6. Campeonato

Podemos usar variáveis para guardar pontos de dois jogadores ou times.

time_a = 8
time_b = 5
print("Time A:", time_a)
print("Time B:", time_b)
O resultado aparecerá aqui.

7. Figurinhas

Variáveis também podem representar quantidades de objetos.

figurinhas = 12
ganhou = 5
total = figurinhas + ganhou
print(total)
O resultado aparecerá aqui.

8. Usando variáveis e input()

Até agora nós colocamos os valores diretamente no código. Com input(), o programa pode pedir uma informação para a pessoa.

nome = input("Qual é seu nome? ")
print("Olá,", nome)
input() recebe uma informação digitada. Normalmente, o que vem do input é texto.

Simulação no navegador

O resultado aparecerá aqui.

Quando precisamos de número

idade = int(input("Qual sua idade? "))
print(idade + 1)

O int() transforma o texto recebido em número inteiro.

9. Pontos

Vamos usar input, variáveis e cálculo para criar um pequeno sistema de pontos.

O resultado aparecerá aqui.

10. Produtos

Agora usamos variáveis para representar preço e quantidade.

preco = 10
quantidade = 3
total = preco * quantidade
print(total)
O resultado aparecerá aqui.

11. Diferenças

Subtração também pode ser usada para descobrir uma diferença.

maior = 20
menor = 13
diferença = maior - menor
print(diferença)
O resultado aparecerá aqui.
ESPAÇO PUBLICITÁRIOÁrea reservada para Google AdSense.

12. Decisões com if

O if permite que o programa tome uma decisão. Ele pergunta: “esta condição é verdadeira?”

idade = 18

if idade >= 18:
    print("Maior de idade")
Se a condição for verdadeira, o bloco do if será executado.

Faça como eu fiz

Digite uma idade e observe a decisão:

O resultado aparecerá aqui.

13. Booleano

Um booleano representa apenas duas possibilidades: True ou False.

tem_ingresso = True

if tem_ingresso:
    print("Pode entrar!")
O resultado aparecerá aqui.

14. Operadores de comparação

OperadorExemploPergunta
==5 == 5É igual?
!=5 != 3É diferente?
>8 > 5É maior?
<3 < 5É menor?
>=5 >= 5É maior ou igual?
<=4 <= 5É menor ou igual?
O resultado aparecerá aqui.

15. If e else

Com if e else, podemos dizer ao programa o que fazer quando a condição é verdadeira e o que fazer quando é falsa.

nota = 7

if nota >= 6:
    print("Aprovado")
else:
    print("Precisa estudar mais")

Aprovação

O resultado aparecerá aqui.

16. Jogos

Decisões são muito usadas em jogos: pontos, vidas, fases, vitória e derrota.

pontos = 10

if pontos >= 10:
    print("Você venceu!")
else:
    print("Tente novamente!")
O resultado aparecerá aqui.
ESPAÇO PUBLICITÁRIOÁrea reservada para Google AdSense.

17. Organizando dados em listas

Uma lista permite guardar vários valores em uma única variável.

frutas = ["maçã", "banana", "uva"]

print(frutas)
['maçã', 'banana', 'uva']

Ingredientes para a receita

ingredientes = ["farinha", "ovo", "leite", "açúcar"]

Uma lista pode representar os ingredientes de uma receita.

Cores

cores = ["azul", "verde", "vermelho"]

Frutas

O resultado aparecerá aqui.

18. Manipulando listas

Podemos adicionar itens usando append().

animais = ["gato", "cachorro"]
animais.append("coelho")
print(animais)
A lista inicial: gato, cachorro

Cardápio

cardapio = ["pizza", "hambúrguer", "salada"]

Listas são úteis para guardar opções de um cardápio, nomes de alunos, produtos, animais e muito mais.

19. Tamanho de lista

A função len() informa quantos itens existem em uma lista.

frutas = ["maçã", "banana", "uva"]
print(len(frutas))
3
A lista tem: gato, cachorro, coelho
ESPAÇO PUBLICITÁRIOÁrea reservada para Google AdSense.

20. Usando for

O for permite repetir uma ação para cada item de uma sequência.

frutas = ["maçã", "banana", "uva"]

for fruta in frutas:
    print(fruta)
maçã banana uva

Notas

notas = [7, 8, 6]

for nota in notas:
    print(nota)
O resultado aparecerá aqui.

21. for i in range()

Quando queremos repetir uma ação uma determinada quantidade de vezes, podemos usar range().

for i in range(5):
    print(i)
0 1 2 3 4
Observe: o range(5) começa em 0 e termina antes do 5.
O resultado aparecerá aqui.

22. Repetição com condição

Além do for, existe o while. Ele repete enquanto uma condição for verdadeira.

numero = 1

while numero <= 5:
    print(numero)
    numero = numero + 1
1 2 3 4 5

Escolhendo a repetição

Quando usar?Uma boa escolha
Quero passar por cada item de uma lista.for
Quero repetir enquanto uma condição for verdadeira.while
Quero repetir uma quantidade definida de vezes.for + range()

Interrompendo o código com break

for i in range(10):
    if i == 5:
        break
    print(i)
0 1 2 3 4

O break interrompe o laço quando a condição acontece.

Faça como eu fiz

O resultado aparecerá aqui.

23. Resposta do desafio!

Desafio: o que este programa mostra?
for i in range(3):
    print("Python")
A palavra Python aparece 3 vezes.
Desafio: qual é o resultado?
numero = 10
if numero % 2 == 0:
    print("Par")
else:
    print("Ímpar")
Par. O resto de 10 dividido por 2 é 0.

24. Projeto final — um pequeno programa de cadastro

Agora vamos juntar várias ideias: variáveis + input + cálculos + if/else + listas + for + print().

O programa em Python

nome = input("Qual é seu nome? ")
idade = int(input("Qual é sua idade? "))
cores = ["azul", "verde", "vermelho"]

if idade >= 10:
    mensagem = "Cadastro permitido!"
else:
    mensagem = "Cadastro precisa ser revisado."

print("=== CADASTRO ===")
print("Nome:", nome)
print("Idade:", idade)
print(mensagem)

print("Cores disponíveis:")
for cor in cores:
    print("-", cor)

Agora execute sua versão

O resultado aparecerá aqui.
🎯 Quantos conceitos apareceram aqui?
  • input() para receber informações;
  • int() para transformar idade em número;
  • variáveis para guardar os dados;
  • if/else para tomar uma decisão;
  • lista para guardar as cores;
  • for para percorrer a lista;
  • print() para mostrar o resultado.
ESPAÇO PUBLICITÁRIOÁrea reservada para Google AdSense.

🤖 Arduino — teste a lógica do código

Aqui não temos a placa física, mas podemos simular a parte mais importante para o estudo: entender o código, identificar os pinos e observar o estado dos componentes. O objetivo é testar a lógica antes de montar o circuito real.

1. O básico: LED piscando

const int LED = 13;

void setup() {
    pinMode(LED, OUTPUT);
}

void loop() {
    digitalWrite(LED, HIGH);
    delay(1000);

    digitalWrite(LED, LOW);
    delay(1000);
}
D13 — LED
💡
DESLIGADO
O resultado do teste aparecerá aqui.

2. Sinaleiro

Imagine três LEDs ligados aos pinos: D13 vermelho, D12 amarelo e D11 verde.

const int VERMELHO = 13;
const int AMARELO = 12;
const int VERDE = 11;

void setup() {
    pinMode(VERMELHO, OUTPUT);
    pinMode(AMARELO, OUTPUT);
    pinMode(VERDE, OUTPUT);
}

void loop() {
    digitalWrite(VERMELHO, HIGH);
    delay(2000);
    digitalWrite(VERMELHO, LOW);

    digitalWrite(VERDE, HIGH);
    delay(2000);
    digitalWrite(VERDE, LOW);

    digitalWrite(AMARELO, HIGH);
    delay(1000);
    digitalWrite(AMARELO, LOW);
}
🔴
D13
DESLIGADO
🟡
D12
DESLIGADO
🟢
D11
DESLIGADO
Clique para executar a sequência.

3. Botão e decisão

const int BOTAO = 2;
const int LED = 13;

void setup() {
    pinMode(BOTAO, INPUT);
    pinMode(LED, OUTPUT);
}

void loop() {
    int estado = digitalRead(BOTAO);

    if (estado == HIGH) {
        digitalWrite(LED, HIGH);
    } else {
        digitalWrite(LED, LOW);
    }
}
O programa vai decidir se o LED deve ficar ligado ou desligado.
🎯 Desafio Arduino
Altere mentalmente o código do LED: o que aconteceria se delay(1000) virasse delay(3000)? O LED ficaria ligado por mais ou menos tempo?
✏️ Complete:
pinMode(LED, ______);
Para um LED que recebe comando de saída, qual palavra completa o código?
OUTPUT.
ESPAÇO PUBLICITÁRIOÁrea reservada para Google AdSense.
ESPAÇO PUBLICITÁRIOÁrea reservada para Google AdSense.

🔐 Criptografia — experimente cifrar uma mensagem

Criptografar significa transformar uma informação em outra forma para dificultar que pessoas não autorizadas entendam seu conteúdo. Aqui vamos usar uma cifra de deslocamento simples, apenas para aprender o conceito.

1. Criptografando letras

Escolha uma mensagem e um deslocamento. Por exemplo, com deslocamento 3, a letra A passa a ser D, B passa a ser E e assim por diante.

O resultado aparecerá aqui.

2. Entendendo o código em Python

mensagem = "OLA MUNDO" deslocamento = 3 # Exemplo conceitual: # A → D # B → E # C → F print("Mensagem original:", mensagem) print("Deslocamento:", deslocamento)
Importante: este exemplo é educativo. Ele ajuda a entender o princípio de uma cifra simples, mas não deve ser usado para proteger senhas ou informações importantes.

3. Números também podem participar

Exemplo: o programa soma a chave e volta ao início quando passa de 9.
✏️ Desafio:
Se o deslocamento for 3, qual será a letra criptografada de A?
D.
✏️ Pense como programador:
Por que uma cifra simples de deslocamento não é adequada para guardar uma senha real?
Porque existem poucas possibilidades de deslocamento e o método pode ser descoberto com facilidade. Para segurança real usamos algoritmos criptográficos apropriados.