Seja um sistema de aritmética de ponto flutuante de quatro dígitos, base decimal e com acumulador de precisão dupla. Dados os números:
x=0.7237 times 10^4 y=0.2145 times 10^-3 e z=0.2585 times 10^1
efetue as seguintes operações e obtenha o erro relativo no resultado, supondo que x, y e z estão exatamente representados:
x-y-z

Passo 1

Beleza, o que temos aqui é um sistema de ponto flutuante em base decimal com 4 dígitos de mantissa e um acumulador de precisão dupla (ou seja, as operações internas usam até 8 dígitos antes de arredondar de volta a 4). O conteúdo é: alinhamento de expoentes, subtração em ponto flutuante, normalização e arredondamento, e por fim cálculo de erro relativo. Vamos precisar:
  1. Converter cada número para sua forma decimal “normal” (sem potência)
  2. Fazer as subtrações uma a uma, mantendo 8 dígitos no acumulador e depois arredondando para 4
  3. Comparar com o valor exato e achar o erro relativo

Passo 2

Primeiro, expressa cada número como valor decimal “normal”:
x = 0.7237times10^4 = 7237, y = 0.2145times10^-3 = 0.0002145, z = 0.2585times10^1 = 2.585

Passo 3

Agora faz a primeira subtração 7237 - 0.0002145 = 7236.9997855 .
  1. Valor exato:
7236.9997855 = 0.72369997855times10^4
  1. Normaliza para representar em ponto flutuante (expoente 4):
0.72369998to 0.7237,
  1. No acumulador temos 8 dígitos da mantissa: mantissa = 0.72369997…
  2. Arredondando para 4 dígitos (olhando o 5º dígito, que é 9):
widehatx-y = 0.7237times10^4 = 7237
logo

Passo 4

Agora faz 7237 - 2.585 = 7234.415 .
  1. Valor exato:
7234.415 = 0.7234415times10^4
  1. Normaliza (expoente 4):
0.7234415to0.7234,
  1. No acumulador mantém 8 dígitos: 0.72344150…
  2. Arredonda para 4 dígitos (5º dígito é 4):
widehatw = 0.7234times10^4 = 7234
então o resultado final da máquina é

Passo 5

O valor exato de w = 7237 - 0.0002145 - 2.585 = 7234.4147855 é
|w - widehat w||w| = |7234.4147855 - 7234|7234.4147855 approx 0.41478557234.4147855 approx 5.73times10^-5
O valor obtido pela máquina é . Então o erro relativo é

Resposta

O resultado obtido em máquina é boxed5,73times10^-5 e o erro relativo aproximado é

Exercícios relacionados