NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Double operácie

V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Adam
Člen
Avatar
Adam:30.11.2017 14:18

Dobrý deň, potreboval by som pomôcť s týmto zadaním:

Nech a a b sú premenné typu double. Platí, že a + b je vždy rovné b + a?

Nech a, b, c sú premenné typu double. Platí, že (a+b)+c je vždy rovné a+(b+c)?

Ďakujem, prajem pekný deň.

 
Odpovědět
30.11.2017 14:18
Avatar
Petan
Člen
Avatar
Petan:30.11.2017 22:49

Myslim ze v prvnim prikladu to plati.
Druhy priklad double je promenna z pohyblivou radovou carkou 64bitu, Napr. kdyby byl schopen pojmout pouze 2 cisla tak pri a = 2.2;b=3.2;c=7.2 tak je vysledek (a+b)+c (2.2 + 3.2) + 7.2 = 5.4 + 7.2 = 12.6 ~ zaoukr. 13
a+(b+c) 2.2 + (3.2 + 7.2) = 2.2 + 10.4 zaokr 10 = 2.2 + 10 = 12.2 zaokr 12
PT

 
Nahoru Odpovědět
30.11.2017 22:49
Avatar
Odpovídá na Adam
Erik Šťastný:1.12.2017 13:40

Vzhledem k tomu, že přesnou hodnotu doublu ovlivní až přesná čísla s kterými se provede operace,tak bych tipnul, že může nasnat situace kde neplatí, že a + b = b + a ,takže za mě odpověď ne a ne, ale je to jen můj dodhad, opravte mě někdo pokud se pletu :)

 
Nahoru Odpovědět
1.12.2017 13:40
Avatar
Odpovídá na Erik Šťastný
Erik Šťastný:1.12.2017 13:53

Vlastně ne říkám blbost, a + b = b + a, druhý příklad si až myslím, že se nerovná, protože může nastat zaokrouhlení dříve v (a+b)+c než v a+(b+c)

PS: Vážně by to už chtělo možnost upravovat komentáře ;)

 
Nahoru Odpovědět
1.12.2017 13:53
Avatar
coells
Tvůrce
Avatar
coells:1.12.2017 22:03

Neplatí ani jedno, ani druhé.
Komutativita součtu platí pod IEEE 754, ale ta nemá s doublem nic společného.
Asociativita a distributivita neplatí obecně.

 
Nahoru Odpovědět
1.12.2017 22:03
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.