Metody Obliczeniowe i Symulacja - laboratorium

Arytmetyka komputerowa

Materialy

Zadania

  1. Napisac program, ktory wypisuje (na przyklad hexadecymalnie) reprezentacje w maszynie liczb float i double.

    Wskazowka: *(int *)&x zmienia liczbe x na int bez standardowej konwersji.

    Program jest tutaj - zachecamy do eksperymentow!

  2. Napisać program liczący kolejne wyrazy ciągu:
    x{n+1}= x{n} + 3.0 * x{n} (1 - x{n})
    startując z punktu x{0} = 0.01. Wykonać to zadanie dla różnych reprezentacji liczb (float, double). Dlaczego wyniki się rozbiegają?

    Uwaga: Nalezy wprowadzic zmienne pomocnicze, aby uniknac obliczen w rejestrach procesora.

  3. Napisać program liczący ciąg z wcześniejszego zadania, ale wg wzoru
    x{n+1} = 4.0 * x{n} - 3.0 * x{n} * x{n}
    - porównać z wynikami z wcześniejszego zadania.
  4. Znaleźć "maszynowe epsilon", czyli najmniejszą liczbę a, taką że a+1>1