Faça um programa que recebe N números inteiros, um em cada linha, os armazena em uma lista e então exibe sua soma.
Entradas:
- Inteiro N , representando a quantidade de números inteiros que compõem a lista.
- N números inteiros.
Saídas:
- A soma dos elementos do vetor.
Entradas:
Passo 1
O que o enunciado pede e quais dados ele dá.
- Pede: escrever um programa que leia
números inteiros (um por linha), armazene esses números em uma lista e exiba a soma desses elementos. - Entradas fornecidas:
- Um inteiro
, que indica quantos números virão a seguir. - Em seguida,
números inteiros, cada um em sua própria linha.
- Um inteiro
- Saída esperada:
- A soma de todos os elementos do vetor (ou lista), um único valor inteiro impresso.
Passo 2
Definir claramente as variáveis e o objetivo passo a passo (sem programar ainda).
- Vamos chamar a lista onde guardamos os números de
. - Os elementos de
serão (cada é um inteiro lido). - Queremos calcular a soma
- Observações práticas importantes:
- Se
então a lista fica vazia e a soma deve ser . - Os
podem ser negativos ou positivos; a conversão correta de texto para inteiro é essencial.
- Se
Passo 3
Estratégia de resolução (o algoritmo em palavras, passo a passo).
- Ler o inteiro
. - Criar uma lista vazia
. - Repetir
vezes: - Ler uma linha da entrada, converter para inteiro (esse será um
). - Acrescentar esse inteiro ao final da lista
.
- Ler uma linha da entrada, converter para inteiro (esse será um
- Após ler os
números, calcular somando todos os elementos de . - Imprimir o valor
.
Duas formas de calcular
:
- Usando um somador acumulador (manual): iniciar
e para cada fazer . - Usando uma função pronta da linguagem (por ex. função sum em Python) que soma todos os elementos da lista.
Passo 4
Por que armazenar em lista? e qual método escolher.
- O enunciado pede explicitamente que os números sejam armazenados em uma lista, então devemos obedecer (mesmo que seja possível somar na leitura sem guardar).
- Para programas de prova, usar a lista deixa o código simples e claro: primeiro lê-se tudo, depois calcula-se a soma.
- Complexidade temporal: a leitura e a soma são operações
. Complexidade espacial: a lista usa memória proporcional a .
Passo 5
Detalhes de implementação que costumam cair na prova (coisas que precisam estar explícitas).
- Conversão: cada linha lida é texto; para usar como número devemos converter com a função de conversão para inteiro da linguagem (em Python: int()).
- Robustez: remover espaços em branco com strip() antes de converter evita erros.
- Caso
seja muito grande, ler linha a linha é mais seguro do que métodos que leem todo o arquivo de uma vez (mas para a maioria das provas simples, ambos funcionam). - Se fizer a soma manualmente, cuidado com sinal e com inicializar
como inteiro zero.
Passo 6
Pseudocódigo didático (passos que você pode escrever em prova se pedirem algoritmo):
Ler
Criar lista vazia
Para de
até
:
\quad Ler valor (converter para inteiro)
\quad Acrescentar em
Iniciar
Para cada elemento em
:
\quad
Imprimir
Criar lista vazia
Para
\quad Ler valor
\quad Acrescentar
Iniciar
Para cada elemento
\quad
Imprimir
Explicação das linhas do pseudocódigo:
- "Ler
" pega quantas linhas seguirão. - "Acrescentar
em " significa usar a operação de append/push conforme a linguagem. - A segunda laço soma todos os elementos. É o mesmo que a expressão
.
Passo 7
Exemplo simples para fixar (manual):
Suponha que a entrada seja:
3
10
-4
7
3
10
-4
7
- Aqui
. - A lista
. - Soma
. - Saída a imprimir: 13
Passo 8
Dicas para a hora da prova e para evitar erros bobos
- Verifique se está lendo exatamente
números (não a mais, nem a menos). - Se usar linguagem que vê final de arquivo (EOF), cuide quando
e as linhas podem vir em formato diferente (às vezes todos os números na mesma linha); para a entrada descrita no enunciado, cada número vem em sua própria linha. - Teste mentalmente com
, com todos números negativos e com mistura de espaços extras. - Se permitido, usar a função que soma a lista (ex.: sum em Python) é seguro e rápido.
Passo 9
Escolha de implementação final (linguagem simples e comum: Python 3)
- Python é ótimo em provas rápidas: leitura e conversão são diretas, e a função sum facilita.
- O programa abaixo segue estritamente o enunciado: lê
, armazena os inteiros em uma lista e imprime a soma.
Resposta
# Programa para ler N inteiros, armazenar em uma lista e imprimir a soma
N = int(input().strip())
A = [int(input().strip()) for _ in range(N)]
print(sum(A))