Uma das avaliações que você fez para ser selecionado para um programa de trainee, consiste em planejar um sistema de geolocalização e é sugerido o sistema de ponto flutuante
normalizado utilizando arredondamento. Assim, foi solicitado mais detalhes sobre o sistema de ponto flutuante respondendo as seguintes perguntas:
Em uma segunda etapa de testes, ocorreu uma falha em uma das contas realizadas pelo sistema, devido a uma resposta inesperada. As duas últimas contas realizadas antes da falha foram
e
, onde
e
qual das contas ocorreu um resultado inesperado e por quê? O que pode ser modificado para resolver o problema deste cálculo?
Em uma segunda etapa de testes, ocorreu uma falha em uma das contas realizadas pelo sistema, devido a uma resposta inesperada. As duas últimas contas realizadas antes da falha foram
Passo 1
Beleza, vamos lá! A gente tem um exercício que envolve sistemas de ponto flutuante, que é uma forma de representar números reais em computadores. O sistema em questão é o
normalizado com arredondamento. Precisamos analisar duas operações realizadas por esse sistema:
e
, onde:
Vamos descobrir qual dessas operações deu uma resposta inesperada e como resolver o problema.
Passo 2
Primeiro, vamos entender o que significa o sistema de ponto flutuante
. Aqui:
- Base 10: Estamos trabalhando com números decimais.
- Precisão 4: Cada número é representado com 4 dígitos significativos.
- Expoente mínimo -5 e máximo 5: O menor expoente permitido é -5 e o maior é 5.
Isso significa que qualquer número no sistema deve ter 4 dígitos significativos e o expoente deve estar entre -5 e 5.
Passo 3
Agora, vamos considerar os valores das variáveis:
Vamos ver o que acontece em cada opera��ão usando o sistema
.
Passo 4
Operação 1:
Calculando:
No sistema com 4 dígitos significativos, precisamos arredondar esse resultado para 4 dígitos:
Então,
.
Passo 5
Operação 2:
Calculando:
Agora, vamos arredondar para 4 dígitos significativos:
Portanto,
.
Passo 6
Até aqui, ambas as operações parecem ter resultados válidos dentro das especificações do sistema. Porém, o enunciado menciona que houve uma falha em uma das contas por uma resposta inesperada. Vamos analisar a sensibilidade do sistema.
No caso de
, estamos lidando com a subtração de um número muito pequeno (
) de um número maior (
). Isso pode causar o que chamamos de perda de significância, onde a precisão do número resultante é menor do que a original devido à diferença de escalas entre os números.
No sistema
, com apenas 4 dígitos significativos, essa perda de precisão pode levar a resultados inesperados ou menos precisos.
Passo 7
Conclusão: A operação que provavelmente causou a falha foi
devido à perda de significância causada pela subtração de um número muito pequeno de um número maior, resultando em menor precisão.
Solução para resolver o problema:
Podemos aumentar a precisão do sistema de ponto flutuante, ou seja, usar mais dígitos significativos além dos 4 atuais. Por exemplo, passar de uma precisão de 4 para 6 dígitos permitiria representar o resultado com maior exatidão, reduzindo a perda de significância.
Podemos aumentar a precisão do sistema de ponto flutuante, ou seja, usar mais dígitos significativos além dos 4 atuais. Por exemplo, passar de uma precisão de 4 para 6 dígitos permitiria representar o resultado
Resposta
A conta
resultou em um valor inesperado devido à perda de precisão. Para resolver o problema, é necessário aumentar a precisão do sistema de ponto flutuante, utilizando mais dígitos significativos.