O código abaixo verifica o limite:
Calculando para . Em seguida, as posições dos elementos do vetor que armazena para cada valor de que estão dentro de uma dada tolerância, representada pela variável , são determinadas.
Descubra por que o programa não funciona, usando o MATLAB.
Passo 1
Este exercício pede que identifiquemos os erros do programa do enunciado, usando o MATLAB. Devemos copiar o programa em um novo script e rodá-lo algumas vezes, até que não apareçam mais mensagens de erro.
Passo 2
Em um novo script do MATLAB, copie o código do enunciado.
Antes de executarmos o programa, vamos ver o que cada linha de código faz, pois isso é necessário para identificar eventuais erros:
Na primeira linha, temos o comando , que limpa o Workspace do MATLAB cada vez que o programa é rodado. Como procuramos erros no código e teremos que rodá-lo várias vezes para ver se corrigimos alguma coisa e encontrar mais erros, é importante limpar o Workspace a cada tentativa.
Na segunda linha, o comando limpa o Command Window do MATLAB cada vez que o programa é executado. Novamente, como vamos rodar o código diversas vezes, é importante limpar o Command Window a cada tentativa, para ficar mais fácil de ver qual erro foi corrigido e qual é o erro a ser corrigido na sequência, caso exista.
Na linha 4, pedimos ao MATLAB para nos mostrar os números resultantes dos cálculos com 16 algarismos significativos.
Na linha 5, criamos um vetor , cujo primeiro elemento será , o segundo será , e assim sucessivamente, até o último elemento . Logo, . Isto é feito elevando-se a uma potência dada pelo vetor , que vai de a .
Na linha seguinte, calcula-se para cada elemento de , e os resultados são armazenados no vetor .
Na linha 8, calcula-se a tolerância, salva na variável . A tolerância é dada pela diferença entre e o oitavo elemento do vetor , que é muito próximo de .
A tolerância é usada na linha 9 para determinar qual elemento do vetor é maior ou igual a ela, por meio da função , que nos retorna os índices dos elementos de que sejam maiores ou iguais a . Desta forma, determina-se os elementos de que são o mais próximo possível de , considerando a tolerância adotada.
Passo 3
Após ver o que cada linha faz, vamos executar o programa pela primeira vez para identificar o primeiro erro. O Command Window fornecerá a seguinte mensagem:
O MATLAB avisou que tem um erro na linha 5, dizendo que o operador só aceita como entrada um número escalar ou uma matriz quadrada. Isto quer dizer que o problema está em .
O MATLAB só trabalha com potências que sejam números ou matrizes quadradas, e a potência na linha 5 é um vetor que vai de a . Queremos elevar a cada elemento do vetor . Para fazermos isto, coloque um ponto ao lado de na linha 5. Além disso, apague o ao final da linha, para quando executar o programa, o vetor ser impresso automaticamente no Command Window:
Vamos ver como ficou?
Agora está do jeito queremos e não há mais mensagens de erro. Contudo, isso não significa que está tudo certo ainda com o programa.
Passo 4
Vamos ver se está tudo certo com a linha 6, onde se deseja calcular para cada elemento de e gerar um vetor com os resultados. Se você imprimir no Command Window, você verá que ele é um escalar, e nos queremos que ele seja um vetor:
Para que seja um vetor com a solução de para cada elemento do vetor , devemos incluir um ponto à esquerda do sinal de divisão, na linha 6:
Vamos ver como ficou agora? Rode o programa e o imprima no Command Window:
Agora temos um vetor! E veja que legal: quando o elemento de é mais próximo de , o seu elemento de correspondente se aproxima de , como indica o limite .
Passo 5
Para finalizar, vamos ver qual o valor de :
E vamos ver as posições dos elementos de que são maiores ou iguais a :
Para ver quais elementos de estão nessas posições, digite no Command Window :
Podemos perceber que eles realmente são maiores que e muito próximos de .
Resposta
Ei, a resposta está no passo a passo :)