3-) Desenvolva um algoritmo que realize a soma dos valores digitados pelo usuário. O algoritmo deverá solicitar que o usuário digite um valor e realizar a soma do mesmo com a somatória dos valores digitados, informar o valor total da soma e solicitar que o usuário digite um novo valor. Para informar que o usuário não deseja mais digitar números ele deverá digitar o número 0 (Utilizar a estrutura REPEAT).
Passo 1
O enunciado pede um algoritmo que:
- Solicite repetidamente que o usuário digite um valor.
- Some esse valor à somatória acumulada dos valores já digitados.
- Informe ao usuário o valor total da soma após cada entrada.
- Permita que o usuário encerre o processo digitando o número
. - Use explicitamente a estrutura de repetição REPEAT (ou seja, um loop que executa o corpo antes de checar a condição de parada).
Informações dadas importantes:
- Valor que indica fim da entrada:
. - É necessário mostrar a soma acumulada a cada nova entrada.
- Deve ser usado REPEAT (loop que verifica a condição no final).
Passo 2
O que é a estrutura REPEAT e por que ela serve aqui (aula rápida e direta):
- REPEAT é um tipo de laço que executa o bloco de instruções pelo menos uma vez e, ao final do bloco, verifica uma condição. Se a condição for falsa, o bloco repete; se for verdadeira, o laço termina.
- Sintaxe conceitual: execute (bloco) até que (condição seja verdadeira). Em pseudocódigo fica “REPEAT … UNTIL (condição)”.
- No nosso problema isso é conveniente porque queremos primeiro pedir um valor ao usuário e só depois checar se ele digitou
. Ou seja, precisamos que o corpo do loop execute pelo menos uma vez — exatamente o comportamento do REPEAT.
Passo 3
Quais variáveis usar e como inicializá-las (explicando conceitos):
- Precisamos de uma variável acumuladora para guardar a soma parcial. Vou chamar essa variável de
. - Conceito de acumulador: é uma variável que guarda o total parcial; começa em um valor neutro (para soma, o neutro é
) e, a cada novo valor, atualiza-se somando o novo número.
- Conceito de acumulador: é uma variável que guarda o total parcial; começa em um valor neutro (para soma, o neutro é
- Precisamos de uma variável para receber o número digitado pelo usuário. Vou chamar essa variável de
. - Inicialização:
- Antes de entrar no loop, definimos
. - Não precisamos inicializar
com um valor específico fora do loop, porque no REPEAT lemos dentro do corpo antes de usá-lo.
- Antes de entrar no loop, definimos
Passo 4
Lógica passo a passo do corpo do loop (o “como” — explicações didáticas para você aplicar na prova):
- No início do corpo do REPEAT, pedimos que o usuário digite um número e lemos esse número em
. - Em prova: escreva claramente "Leia
".
- Em prova: escreva claramente "Leia
- Atualizamos a acumuladora: fazemos
. - Explicação: a expressão do lado direito calcula o novo total somando o que já tinha em
com o lido; então atribuímos esse total de volta a . - Observação prática: se o usuário digitar
, essa soma acrescenta à acumuladora — não altera o total — e depois o laço verificará a condição de parada.
- Explicação: a expressão do lado direito calcula o novo total somando o que já tinha em
- Informamos ao usuário a soma atual, isto é, exibimos o valor de
. - No final do bloco, colocamos a condição de parada do REPEAT: repetir até que
. - Como o REPEAT verifica a condição após o corpo, o processo garante que sempre se leia ao menos um valor e que, ao digitar
, o laço termine após aquela iteração.
- Como o REPEAT verifica a condição após o corpo, o processo garante que sempre se leia ao menos um valor e que, ao digitar
Passo 5
Um exemplo concreto (simulação passo a passo) para solidificar a ideia:
- Suponha as entradas do usuário na ordem:
, , , . - Inicialmente:
. - 1ª iteração: lê
. Atualiza . Exibe . Como , repete. - 2ª iteração: lê
. Atualiza . Exibe . Como , repete. - 3ª iteração: lê
. Atualiza . Exibe . Como , repete. - 4ª iteração: lê
. Atualiza . Exibe . Agora então a condição do UNTIL é satisfeita e o loop termina. - Resultado final (soma acumulada):
.
Passo 6
Observações, dicas práticas e cuidados para a prova:
- Incluir
na soma não causa erro (somar não altera o total), por isso a versão simples de fazer dentro do REPEAT é aceitável e clara. - Se, por algum motivo, você quiser evitar somar o
(por exemplo, para não executar operações desnecessárias), pode testar e só somar se . Mas não é necessário aqui; somar é inofensivo. - Certifique-se de inicializar
antes do REPEAT; esquecer a inicialização é erro clássico. - Na prova, escreva claramente:
- a declaração das variáveis,
- a inicialização de
, - o bloco REPEAT com leitura, atualização e exibição,
- e o UNTIL com a condição
.
- Dica de redação: deixe explícito o que o programa mostra ao usuário (por exemplo: "Exibe 'Soma atual = ’ e o valor de
").
Passo 7
Pequeno incentivo final
- Você já tem a ideia completa: um acumulador, o REPEAT que lê e soma, e a condição
para parar. Na prova, escreva isso com calma seguindo os itens do passo anterior — vai dar certo! Agora vou te entregar o pseudocódigo pronto e limpo para copiares/entregares.
Resposta
Algoritmo SomaComRepeat\nInicio\n
\nREPEAT\n Escreva "Digite um valor (digite 0 para terminar): "\n Leia
\n
\n Escreva "Soma atual = ",
\nUNTIL
\nEscreva "Soma final = ",
\nFim