Pular para conteúdo

Lista 02 · Variáveis e rastreio

A Parte A desta lista é a mais importante do mês. Rastrear um programa no papel — seguir linha a linha, anotando o valor de cada variável — é a habilidade que a Avaliação 1 cobra e a que mais rende quando um programa não faz o que você esperava.

Resista à tentação de rodar antes de responder. Prever e errar ensina; ler a saída pronta, não.

Abrir o OnlineGDB

Como esta lista funciona

Cada exercício abaixo é um arquivo só. Copie o código inteiro, cole no OnlineGDB, escreva a sua solução no lugar do # TODO e aperte ▶ Run.

Nos exercícios que mostram como deve ficar, compare a sua saída com a publicada aqui, linha por linha. Espaço a mais, acento faltando e letra maiúscula contam: o computador não relaxa em nenhum deles.

Parte A · no papel

Faça esta parte antes de ligar o computador

Escreva a resposta no caderno, depois rode para conferir. Prever e errar ensina; rodar primeiro e ler a saída, não.

Para cada programa, monte a tabela de rastreio no caderno — uma coluna por variável, uma linha por instrução — e escreva o que será impresso. Só depois rode para conferir.

A1.

A = 10
B = 20
print(B)
B = 5
print(A, B)

A2.

A = 10
B = 20
C = A
B = C
A = B
print(A, B, C)

A3.

A = 30
B = 20
C = A + B
print(C)
B = 10
print(B, C)
C = A + B
print(A, B, C)

Preste atenção no segundo print: o valor de C mudou quando B mudou? Explique em uma frase.

A4.

A = 10
B = A + 1
A = B + 1
B = A + 1
print(A)

A5. Este programa deveria trocar os valores de x e y, mas não troca. Diga o que ele imprime e conserte-o.

x = 3
y = 8
x = y
y = x
print(x, y)

A6. Diga o tipo de cada valor (int, float, str ou bool):

a = 42
b = "42"
c = 4.2
d = True
e = "True"
f = 42.0

A7. Qual destes nomes de variável o Python não aceita? Diga por quê.

preco_total      2019_vendas      salário_base
totalGeral       total geral      _restante

Parte B · no computador

Exercício 01

Escreva um programa que troque os valores de duas variáveis e mostre o antes e o depois.

O programa não pergunta nada: os valores já estão escritos nele. O que se cobra aqui é a terceira variável — sem ela a troca não funciona.

Como deve ficar. O programa tem de imprimir exatamente:

Antes:  24 8
Depois: 8 24
# Exercício 01 — trocando dois valores de lugar.
porta_a = 24
porta_b = 8

print("Antes: ", porta_a, porta_b)

# TODO: troque os valores de porta_a e porta_b.

print("Depois:", porta_a, porta_b)

Baixar ex01.py

Exercício 02

Um contador começa em zero e cresce. Escreva um programa que declare instalacoes = 0 e, em seguida, some 1 a ele três vezes, imprimindo o valor depois de cada soma.

Use a forma instalacoes = instalacoes + 1 nas três vezes. É o padrão do contador, e você vai repeti-lo o semestre inteiro.

Como deve ficar. O programa tem de imprimir exatamente:

Inicio: 0
Depois da 1a: 1
Depois da 2a: 2
Depois da 3a: 3
# Exercício 02 — o contador.
instalacoes = 0
print("Inicio:", instalacoes)

# TODO: some 1 três vezes, imprimindo o valor depois de cada soma.

Baixar ex02.py

Exercício 03

O programa abaixo tem os tipos errados. Ele deveria somar duas quantidades de portas, mas os valores estão entre aspas — então são texto.

portas_switch = "24"
portas_patch = "48"
print("Total de portas:", portas_switch + portas_patch)

Rode-o como está e veja o que sai. Depois conserte-o para que o total saia certo.

Acrescente, no fim, um comentário de uma linha explicando o que o + fez com os valores em texto.

Como deve ficar. O programa tem de imprimir exatamente:

Total de portas: 72
# Exercício 03 — os tipos errados.
# TODO: conserte os dois valores abaixo para que a soma dê o total certo.
portas_switch = "24"
portas_patch = "48"

print("Total de portas:", portas_switch + portas_patch)

# TODO: explique aqui, em uma linha, o que o + fazia antes do conserto.

Baixar ex03.py

Exercício 04

Um técnico registra a leitura de um medidor no início e no fim do mês. Escreva um programa que guarde as duas leituras em variáveis, calcule o consumo e mostre as três informações.

Os valores estão no código — nada de input() ainda. O que se cobra é escolher nomes que digam o que cada coisa é.

Como deve ficar. O programa tem de imprimir exatamente:

Leitura inicial: 4820
Leitura final: 5137
Consumo no mes: 317 kWh
# Exercício 04 — o consumo do mês.
leitura_inicial = 4820
leitura_final = 5137

# TODO: calcule o consumo e imprima as três linhas da saída esperada.

Baixar ex04.py