programa {
inclua biblioteca Matematica --> m
funcao inicio() {
inteiro i, n
real soma=0
faca{
escreva("Digite um número maior que zero: “)
leia (n)
}enquanto(n<=0)
para (i=1; i<=n; i++){
soma = soma + (1/(i+1))
}
escreva(”\nSoma = ", m.arredondar(soma, 4))
}
}
inclua biblioteca Matematica --> m
funcao inicio() {
inteiro i, n
real soma=0
faca{
escreva("Digite um número maior que zero: “)
leia (n)
}enquanto(n<=0)
para (i=1; i<=n; i++){
soma = soma + (1/(i+1))
}
escreva(”\nSoma = ", m.arredondar(soma, 4))
}
}
Passo 1
O enunciado nos deu um programa em pseudocódigo. O que o programa pede e quais informações ele fornece:
- Pede ao usuário um número inteiro
maior que zero (o programa repete a leitura enquanto ). - Inicializa uma variável real
. - Executa um laço para
variando de até (inclusive), e em cada iteração faz . - Ao final imprime
arredondado com 4 casas decimais usando a função .
As perguntas implícitas que vamos responder: (1) o que esse programa calcula em termos matemáticos (uma expressão fechada da soma), (2) como calcular esse valor manualmente em exemplos pequenos e (3) como funciona o arredondamento a 4 casas decimais.
Passo 2
Interpretando o laço e escrevendo a soma de forma matemática:
- O laço faz a soma dos termos
para . - Escrevemos isso como uma soma finita:
- Reindexando (fazendo
, então quando temos e quando temos ), obtemos a forma equivalente
Explicação didática: reindexar é só mudar o nome do índice para visualizar melhor a soma; aqui mostra que estamos somando os recíprocos desde
até
.
Passo 3
Relacionando com números harmônicos (conceito e definição):
- Definimos o
-ésimo número harmônico como
- Isso significa que
. - Se subtrairmos
de , ficamos com exatamente os termos até . Logo:
Didática: pensar em
é útil porque compacta somas de recíprocos; o programa soma recíprocos que começam em
, então é
menos o primeiro termo
.
Passo 4
Conclusão matemática do que o programa calcula:
- Portanto, a variável
após o laço vale
para qualquer inteiro
.
- Observação prática: para
o programa soma apenas ; para soma , e assim por diante.
Passo 5
Como calcular à mão para valores pequenos de
(exemplos passo a passo):
- Exemplo
:
- Exemplo
:
Calcule termo a termo:
Somando com cuidado (somar frações exatas também é opção):
Ou com frações:
Didática: para a prova, se puder, some frações reduzidas para obter resultado exato; caso contrário, faça soma decimal com boa precisão.
Passo 6
Arredondamento a 4 casas decimais (como o programa imprime):
- O programa usa
, que significa que o número final será arredondado para 4 casas decimais (quatro dígitos após a vírgula). - Regra de arredondamento usual: observe a quinta casa; se for
arredonda a quarta casa para cima, caso contrário mantém. - Exemplo (usando
do passo anterior): . Arredondando para 4 casas decimais dá (pois a quinta casa é 3).
Passo 7
Complexidade e observações práticas para prova:
- Se você tiver que justificar tempo de execução: o programa faz
iterações, cada uma com uma operação de soma; complexidade . - Se a prova pedir fórmula fechada, use
. Se pedir valor numérico, calcule somando frações ou somando em ponto flutuante e depois arredonde. - Atenção: não existe uma fórmula elementar simples para
em termos de funções elementares; às vezes usamos aproximação assintótica , onde é a constante de Euler-Mascheroni, mas isso é só para aproximações quando é grande. Para a prova, o exato é a resposta correta.