(1 ponto) Faça um programa que receba entradas numéricas do usuário enquanto ele não digitar \mathbf{s}, sem aspas, e as adicione em uma lista. Ao final, imprima a lista.
EXEMPLO
Entrada Saída
5 [' 5 ', ' 1 ', ' 8 ']
1
8
s

Passo 1

O enunciado pede um programa que:
  • receba entradas do usuário repetidamente;
  • pare de receber quando o usuário digitar exatamente \mathbf{s} (sem aspas);
  • adicione cada entrada numérica recebida a uma lista;
  • ao final (quando o usuário digitou \mathbf{s}), imprima a lista com todas as entradas coletadas.
Informações relevantes dadas:
  • O terminador é a string \mathbf{s}.
  • As entradas antes de \mathbf{s} são numéricas (o enunciado supõe esse comportamento do usuário).
  • A saída deve ser a lista contendo as entradas coletadas, no mesmo ordem em que foram digitadas.

Passo 2

Ideia geral (em linguagem simples):
  • Repetir: perguntar ao usuário por uma entrada.
  • Se a entrada for \mathbf{s}, sair do loop.
  • Caso contrário, guardar a entrada em uma lista e continuar pedindo outra entrada.
  • Quando o loop terminar, imprimir a lista.
Isso corresponde a um loop de repetição com checagem no começo ou no fim; o jeito mais direto em Python é usar um loop infinito controlado por break quando a entrada for \mathbf{s}.

Passo 3

Noções úteis (explicadas passo a passo):
  • Em Python, a função input() lê uma linha do usuário e retorna uma string. Ex.: se o usuário digitar 5 e apertar Enter, input() retorna a string "5".
  • Para comparar com \mathbf{s} de forma robusta (evitando espaços extras), é comum usar entrada = input().strip(). O método strip() remove espaços em branco no início e no fim da string. Assim, se o usuário digitar s com espaços, strip() transforma isso em s.
  • Para guardar valores em ordem, usa-se uma lista: crie lista = [] e, a cada entrada válida, faça lista.append(entrada).
  • Se quiser tratar as entradas como números (por exemplo inteiros) em vez de strings, é preciso converter: valor = int(entrada) ou valor = float(entrada). Essa conversão pode falhar se a entrada não for um número — então usa-se try / except para capturar erros. No enunciado não há necessidade explícita de validar entradas inválidas, pois diz que receberá entradas numéricas até s; ainda assim, é bom saber dessa opção.

Passo 4

Algoritmo detalhado que dá para seguir na prova (passo a passo, sem programar ainda):
  1. Criar uma lista vazia chamada, por exemplo, lista.
  2. Começar um loop infinito: while True:.
  3. Ler a entrada do usuário e aplicar strip(): entrada = input().strip().
  4. Verificar se entrada == 's'.
    • Se for, usar break para sair do loop.
    • Se não for, acrescentar entrada à lista com lista.append(entrada).
  5. Repetir o loop até o usuário digitar s.
  6. Após o loop, imprimir a lista com print(lista).
Observações práticas:
  • Usar strip() evita que espaços adicionais estraguem a comparação com s.
  • Guardar as entradas como strings reproduz fielmente o que o usuário digitou (útil quando se quer manter formatação).
  • Se a prova pedir explicitamente para armazenar números (por exemplo, para fazer cálculos depois), converta para int ou float dentro do passo em que se faz append, usando try/except para segurança.

Passo 5

Exemplo manual de execução seguindo o algoritmo (para ficar visual na hora da prova):
  • Estado inicial: lista = [].
  • Usuário digita 5entrada = '5' → não é 's'lista.append('5') → agora lista = ['5'].
  • Usuário digita 1entrada = '1'lista = ['5', '1'].
  • Usuário digita 8entrada = '8'lista = ['5', '1', '8'].
  • Usuário digita s → condição entrada == 's' é verdadeira → sai do loop.
  • Imprime-se ['5', '1', '8'], que corresponde ao exemplo do enunciado (ordem preservada).

Passo 6

Dicas rápidas para a prova (anotações de bolso):
  • Lembre-se de usar strip() ao ler entrada quando comparar com caracteres fixos como s.
  • Se a prova exige exatamente o formato de saída com aspas (strings), imprimir a lista de strings com print(lista) já dá esse formato.
  • Se quiser números (sem aspas) converta com int() e depois imprima: print(lista) mostrará [5, 1, 8].
  • Se tiver que lidar com entradas inválidas, envolva a conversão em:
    try:
        num = int(entrada)
    except ValueError:
        # tratar entrada inválida
    

Resposta

lista = []
while True:
entrada = input().strip()
if entrada == ‘s’:
break
lista.append(entrada)
print(lista)

Exercícios relacionados