dokładność liczby zmiennopozycyjnej.

0

Cześć

Męczę się już z tym zadankiem parę dobrych chwil, i pomimo wszystko dalej niezbyt rozumiem jak się za to zabrać, a mianowicie:

Zmienne typu short int zajmują 2 bajty i są pamiętane w kodzie U2. Stworzono nowy typ:
struct real { short int mantysa; short int cecha; } reprezentujący liczby zmiennopozycyjne,
których wartość jest równa mantysa*2ˆcecha. Z dokładnością do ilu cyfr dziesiętnych można
reprezentować liczby typem real?

  1. około 8
  2. około 15
  3. około 5

Jest ktoś w stanie pomóc, wytłumaczyć?

2

2^16 = 65 533
Jak dla mnie, to jest około 5-ciu.

2

@Freja Draco: 2^15 bo jeden bit zostawiamy na znak

0

Zaznaczam, że bardzo dawno wiedziałem cokolwiek na ten temat ;p

Na mój rozum poprawną odpowiedzią jest: pytanie nie ma sensu, jest nie poprawne.
https://eszkola.pl/matematyka/cecha-i-mantysa-liczby-9709.html
https://zapytaj.onet.pl/Category/006,003/2,23671715,Co_to_jest_funkcja__mantysa_i_cecha_.html

Próbuję sobie wyobrazić reprezentację cecha . mantysa (nie wiem jak to by miało działać na przykład jeżeli cecha i mantysa są ujemne) więc jak mantysa jest 16 bitów U2.
U2 to liczby z zakresu od -2^(16-1) do 2^(16-1) -1
https://pl.wikipedia.org/wiki/Kod_uzupe%C5%82nie%C5%84_do_dw%C3%B3ch
czyli od "Signed: From −32,768 to 32,767"
https://en.wikipedia.org/wiki/Integer_%28computer_science%29
więc jak powyżej bym odpowiedział że około 5-ciu (bo mantysa to liczba około pięcio pozycyjna dziesiętnie ale chyba lepiej używać tylko liczb czteropozycyjnych).

** ale nie ma związku**: "liczby zmiennopozycyjne, których wartość jest równa mantysa*2ˆcecha"
Może zamiast cechy chodzi o wykładnik?
https://www.samouczekprogramisty.pl/liczby-zmiennoprzecinkowe/

No jak dla mnie to z opisem zadania jest coś nie tak.

0

offtopic.
wymyśliłem zadanie rekrutacyjne.
napisz funkcję która dostaje cechę i mantysę a zwraca liczbę. No i wtedy podać ujemną mantysę. Może jednak wyliczy poprawnie ;p.

1 użytkowników online, w tym zalogowanych: 0, gości: 1