Pular para conteúdo

Lista 03 · Entrada e saída de dados

A partir desta lista os seus programas conversam com quem os usa. Todos eles seguem a mesma forma: pergunta, converte, calcula, mostra.

Atenção à conversão. O que vem do teclado é texto, sempre. O exercício 05 existe só para te mostrar o estrago que esquecer disso causa — e o pior é que ele não dá erro nenhum.

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.

A1. O que este programa imprime, se a pessoa digitar 7?

n = input("Numero: ")
print(n + n)

E se a linha fosse n = int(input("Numero: "))?

A2. Este programa dá erro. Qual, e em que linha?

idade = input("Idade: ")
print("Ano que vem:", idade + 1)

A3. O que sai na tela?

preco = 7
print("preco")
print(preco)
print(f"preco")
print(f"{preco}")

A4. A pessoa digita 1,75 (com vírgula) neste programa. O que acontece?

altura = float(input("Altura: "))
print(altura * 2)

A5. Ordene o algoritmo. As linhas estão fora de ordem. Reescreva-as na ordem que faz o programa funcionar.

total = minutos * preco
preco = 0.25
print(f"Total: R$ {total:.2f}")
minutos = int(input("Minutos falados: "))

Parte B · no computador

Exercício 01

Escreva um programa que pergunte o nome da pessoa e devolva uma saudação.

Use uma f-string na saída.

Como deve ficar. Rodando o programa e digitando Ana, a tela tem de ficar assim:

Digite seu nome: Ana
Ola, Ana! Bem-vindo(a) a disciplina de Algoritmos.
# Exercício 01 — saudação.
# TODO: pergunte o nome e imprima a saudação.

Baixar ex01.py

Exercício 02

Escreva um programa que pergunte uma temperatura em Fahrenheit e mostre o valor em Celsius, com uma casa decimal.

A fórmula é C = (F - 32) * 5 / 9. Repare nos parênteses: sem eles, a conta sai errada e o programa não reclama.

Como deve ficar. Rodando o programa e digitando 98.6, a tela tem de ficar assim:

Temperatura em Fahrenheit: 98.6
98.6 F equivalem a 37.0 C
# Exercício 02 — Fahrenheit para Celsius.
# TODO: pergunte a temperatura, converta e mostre com uma casa decimal.

Baixar ex02.py

Exercício 03

Uma operadora cobra R$ 0,25 por minuto falado. Escreva um programa que pergunte quantos minutos o cliente falou e mostre a conta dele, formatada como dinheiro (duas casas decimais).

Como deve ficar. Rodando o programa e digitando 137, a tela tem de ficar assim:

Quantos minutos falados: 137
Minutos falados: 137
Total a pagar: R$ 34.25
# Exercício 03 — a conta da operadora.
preco_por_minuto = 0.25

# TODO: pergunte os minutos, calcule o total e mostre com duas casas.

Baixar ex03.py

Exercício 04

Escreva um programa que pergunte quanto a pessoa ganha por hora e quantas horas ela trabalhou no mês, e mostre:

  • o salário bruto;
  • o desconto de 11% de INSS;
  • o salário líquido.

Tudo com duas casas decimais.

Como deve ficar. Rodando o programa e digitando 32.50, 160, a tela tem de ficar assim:

Quanto voce ganha por hora: 32.50
Horas trabalhadas no mes: 160
Salario bruto:   R$ 5200.00
Desconto (11%):  R$ 572.00
Salario liquido: R$ 4628.00
# Exercício 04 — salário líquido.
# TODO: pergunte o valor da hora e as horas trabalhadas.
# TODO: calcule bruto, desconto (11%) e líquido, e mostre os três.

Baixar ex04.py

Exercício 05

Este exercício é sobre um erro, e é o mais importante da lista.

O programa abaixo deveria calcular quantos minutos o cliente fala por ano, a partir da média mensal. Ele não dá erro nenhum — e mesmo assim o resultado está absurdamente errado.

minutos = input("Minutos por mes: ")
print("No ano todo:", minutos * 12)
  1. Rode-o como está, digitando 137, e olhe bem para o que saiu.
  2. Conserte-o.
  3. Escreva, num comentário no fim, por que o original errava — e por que isso é mais perigoso do que um programa que trava.

Guarde este caso. É o modo de falha que você vai encontrar a vida inteira, inclusive em código escrito por assistentes de IA: roda, não reclama e entrega o número errado.

Como deve ficar. Rodando o programa e digitando 137, a tela tem de ficar assim:

Minutos por mes: 137
No ano todo: 1644
# Exercício 05 — o erro que não dá erro.
# TODO: conserte a linha abaixo.
minutos = input("Minutos por mes: ")

print("No ano todo:", minutos * 12)

# TODO: explique aqui por que o original errava, e por que isso é perigoso.

Baixar ex05.py