Implementar um algoritmo que recebe um número inteiro N fornecido pelo usuário e mostre a soma dos números ímpares de 0 até N (incluindo N , se N for ímpar).
Passo 1
Beleza, o exercício pede pra gente criar um algoritmo que, dado um inteiro
digitado pelo usuário, calcula a soma de todos os números ímpares entre 0 e
(incluindo
se ele for ímpar).
Conteúdo: laços de repetição (loop), operadores aritméticos e teste de condição.
O que vamos precisar:
Conteúdo: laços de repetição (loop), operadores aritméticos e teste de condição.
O que vamos precisar:
- Saber detectar se um número é ímpar (usar o resto da divisão por 2 – operador módulo).
- Fazer um loop de 0 até
. - Acumular a soma desses valores ímpares.
Passo 2
Primeiro, o que é um número ímpar?
Um inteiro é ímpar se, ao dividir por 2, o resto for diferente de zero. Em notação:
Um inteiro
Por exemplo,
, logo 3 é ímpar; já
, logo 4 é par.
Então, no nosso algoritmo, sempre que um número satisfizer
, a gente vai adicioná-lo à soma acumulada.
Então, no nosso algoritmo, sempre que um número
Passo 3
Vamos estruturar o algoritmo em pseudocódigo passo a passo:
- Ler o valor inteiro
. - Inicializar uma variável
soma = 0
. - Fazer um loop para
variando de 0 até (inclusive):
a. Se, então: soma = soma + i
- Ao final do loop,
soma
terá o total que queremos. - Imprimir o valor de
soma
.
Em notação próxima ao que seria um código-padrão:
Leia N
soma ← 0
Para i de 0 até N faça
Se i mod 2 ≠ 0 então
soma ← soma + i
FimSe
FimPara
Imprima soma
Passo 4
Vamos testar com um exemplo simples:
Suponha .
Os ímpares de 0 a 7 são 1, 3, 5, 7.
Somando: .
Nosso algoritmo percorrerá i=0,1,2,…,7, só somará quando for 1, 3, 5 e 7, resultando em 16.
Suponha
Os ímpares de 0 a 7 são 1, 3, 5, 7.
Somando:
Nosso algoritmo percorrerá i=0,1,2,…,7, só somará quando
Resposta
O algoritmo acima calcula corretamente a soma dos números ímpares de 0 até
. Quando executado, ele lê
, percorre todos os inteiros de 0 a
, verifica o resto da divisão por 2 e acumula apenas os ímpares. Ao final, imprime o valor da soma.