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 F(10,4,-5,5) 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 x+y e y-z, onde x=0,1 times 10^-4, y=0,8345 times 10^1 e z=0,2 times 10^-2 em qual das contas ocorreu um resultado inesperado e por quê? O que pode ser modificado para resolver o problema deste cálculo?

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 F(10,4,-5,5) normalizado com arredondamento. Precisamos analisar duas operações realizadas por esse sistema: x + y e y - z, onde:
  • x = 0,1 times 10^-4
  • y = 0,8345 times 10^1
  • z = 0,2 times 10^-2 em
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 F(10,4,-5,5). 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:
  • x = 0,1 times 10^-4 = 1,0 times 10^-5
  • y = 0,8345 times 10^1 = 8,345
  • z = 0,2 times 10^-2 = 2,0 times 10^-3
Vamos ver o que acontece em cada opera��ão usando o sistema F(10,4,-5,5).

Passo 4

Operação 1: x + y
Calculando:
x + y = 1,0 times 10^-5 + 8,345 = 8,34501
No sistema com 4 dígitos significativos, precisamos arredondar esse resultado para 4 dígitos:
8,34501 approx 8,345 (já tem 4 dígitos) áí
Então, x + y = 8,345.

Passo 5

Operação 2: y - z
Calculando:
y - z = 8,345 - 2,0 times 10^-3 = 8,345 - 0,002 = 8,343
Agora, vamos arredondar para 4 dígitos significativos:
8,343 (já tem 4 dígitos) áí
Portanto, y - z = 8,343.

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 y - z = 8,343, estamos lidando com a subtração de um número muito pequeno ( 0,002) de um número maior ( 8,345). 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 F(10,4,-5,5), 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 y - z = 8,343 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 8,343 com maior exatidão, reduzindo a perda de significância.

Resposta

A conta y - z 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.

Exercícios relacionados