Programação como descrição de comportamento

Compreender programação como expressão executável de regras e passos.

Programação como descrição de comportamento

Objetivo da aula

Compreender programação como expressão executável de regras e passos.

Regra desta aula: vamos assumir que você nunca viu este assunto antes. Nenhum termo importante será usado sem explicação e todo exemplo deve ser entendido linha por linha, não apenas copiado.

Começando do zero

Programar é escrever uma sequência de instruções claras o bastante para que o computador consiga executá-las sem precisar adivinhar nada. O computador é muito rápido, mas não “entende a intenção” como uma pessoa. Se você disser para uma pessoa “organize estas notas”, ela pode fazer perguntas, perceber o contexto e escolher um jeito. Um programa precisa transformar essa intenção em passos definidos: quais dados entram, o que fazer com eles e qual resultado deve sair.

Uma imagem mental para entender

Imagine um robô de cozinha que só obedece comandos literais. “Faça um sanduíche” é vago. Já “pegue duas fatias de pão; coloque uma fatia de queijo entre elas; feche o sanduíche” descreve um comportamento executável. Programação faz a mesma transformação: tira uma ideia da cabeça de alguém e a converte em passos que uma máquina pode executar.

Conceitos essenciais, sem pular etapas

Problema, regra e instrução

O problema é aquilo que queremos resolver. A regra descreve como decidir ou calcular. A instrução é uma operação concreta escrita na linguagem. Um programa costuma juntar muitas instruções pequenas para realizar uma tarefa maior.

Entrada, processamento e saída

Uma entrada é um dado recebido pelo programa. O processamento transforma ou analisa esses dados. A saída é o resultado observado. Nem todo programa pergunta algo ao usuário, mas esse modelo ajuda a enxergar o fluxo.

Estado

Estado é o conjunto de informações que o programa possui em determinado momento. Se um jogo guarda 3 vidas, 120 pontos e a fase 2, esses valores fazem parte do estado. Quando uma instrução muda os pontos para 130, o estado mudou.

Código e execução não são a mesma coisa

O arquivo com o código é um texto armazenado. Quando o interpretador executa esse texto, operações acontecem: valores são criados, comparações são feitas e saídas podem aparecer. Ler uma receita e cozinhar a receita são coisas relacionadas, mas diferentes; código e execução também.

Modelo mental

PROBLEMA → REGRAS → INSTRUÇÕES → EXECUÇÃO → MUDANÇA DE ESTADO → RESULTADO

Exemplo 1 — primeiro veja o programa inteiro

nome = "Lia"
pontos = 10
pontos = pontos + 5
print(nome, "tem", pontos, "pontos")

Agora vamos ler linha por linha

  • nome = "Lia": cria o valor de texto "Lia" e associa esse valor ao nome nome.
  • pontos = 10: o estado agora inclui o número 10 associado a pontos.
  • pontos = pontos + 5: primeiro o Python lê o valor atual de pontos (10), calcula 10 + 5 e só então associa 15 ao mesmo nome.
  • print(...): produz uma saída visível no terminal. O programa não “explica” o que pensou; ele executa as instruções na ordem.

Saída esperada

Lia tem 15 pontos

Exemplo 2 — o mesmo conceito em outra situação

temperatura = 22
print("Antes:", temperatura)
temperatura = temperatura + 3
print("Depois:", temperatura)

Observe que a mesma variável participa de dois estados diferentes: antes da atualização vale 22; depois vale 25. Esse é um exemplo simples de mudança de estado.

Experimento guiado

Não pule esta parte. Programação só começa a fazer sentido quando você prevê um resultado, executa e compara a previsão com o que realmente aconteceu.

  1. Antes de executar o segundo exemplo, escreva em um papel qual saída você espera.
  2. Troque 3 por 10 e explique, em palavras, qual instrução alterou o estado.
  3. Crie uma variável moedas com valor 4, acrescente 2 e mostre o resultado.
  4. Explique para outra pessoa a diferença entre o arquivo de código e o programa em execução.

Mini desafio

Crie um programa que represente uma caixa com 8 lápis. Depois simule a entrada de mais 3 lápis e mostre a quantidade final.

Solução comentada

lapis = 8
lapis = lapis + 3
print("Quantidade final:", lapis)

Depois de executar a solução, altere pelo menos um valor e explique por que o novo resultado mudou. Se você só copiou e não consegue explicar cada linha, refaça o desafio em uma versão menor.

Erros comuns e por que acontecem

  • Pensar que o computador “sabe o que você quis dizer”. Ele executa o que foi escrito, não o que ficou implícito.
  • Achar que uma variável é uma caixa física dentro do computador. É um nome usado pelo programa para referenciar um valor.
  • Mudar várias linhas ao mesmo tempo e depois não saber qual delas causou o novo resultado.

Cheque se você realmente entendeu

Se pontos vale 7 e executamos pontos = pontos + 2, quanto passa a valer?

Resposta: 9, porque o valor antigo é lido, somado a 2 e o resultado é associado novamente ao nome.

Um arquivo .py parado no disco já está “executando”?

Resposta: Não. Ele contém código. A execução ocorre quando um interpretador inicia e processa as instruções.

Todo programa precisa de entrada digitada por uma pessoa?

Resposta: Não. A entrada pode vir de arquivo, sensor, rede, banco de dados ou até valores fixos no próprio código.

Resumo em linguagem simples

Nesta aula, o ponto central foi Programação como descrição de comportamento. Tente explicar o modelo PROBLEMA → REGRAS → INSTRUÇÕES → EXECUÇÃO → MUDANÇA DE ESTADO → RESULTADO sem olhar a tela. Depois, escreva um exemplo próprio menor que os apresentados. Esse exercício de explicação é parte do aprendizado, não um extra.

Conexão com a próxima aula

Na próxima aula, Sintaxe, semântica e erros, vamos aproveitar exatamente o que foi construído aqui. Você não precisa memorizar tudo; precisa conseguir reconhecer o conceito e reconstruí-lo com raciocínio e testes.