Софтуерно Инженерство
Loading...
+ Нов въпрос
canimirangelov avatar canimirangelov 19 Точки

Противоположни твърдения за float & double

Здравейте, колеги!

Намерих две твърдения във "Въведение в програмирането", които разбирам като противоположни, а се отнасят до точност на променливи, което за мен като физик е изключително важно.

http://postimg.org/image/nqdztxsoz/

Моля някой да поясни какво точно се има предвид.

Тагове:
-3
Основи на програмирането 13/10/2016 20:53:05
gasho avatar gasho 8 Точки

Ти като физик трябва да четеш по-добре какво пише, защото е написано като за деца...

"реалният тип double запазва доста по-голяма точност от float и ако ни е необходима голяма точност след десетичния знак, ще ползваме него."

3
03/09/2015 10:40:38
DiyanTonchev92 avatar DiyanTonchev92 233 Точки

...реалният тип double запазва доста по-голяма точност от float и ако ни е необходима голяма точност след десетичния знак, ще ползваме него.

Аз не виждам никакви противоположни твърдения... Къде ги видя? Или реши просто да се похвалиш, че си физик? smiley

0
03/09/2015 10:46:53
Ifandieva avatar Ifandieva 72 Точки

Гадничко сте се отнесли към човека. Тук е място за питане. А и е прав да се обърква — целият тип се казва floating-point, пък float-a е едва ли не последна дупка на кавала...

0
canimirangelov avatar canimirangelov 19 Точки

"Поради това удобство в съвременната изчислителна техника често се използва представянето с плаваща запетая - за да се даде възможност за работа с максимален брой значещи цифри" - това доколкото аз разбирам е float

Това за мен е обратното на 

"реалният тип double запазва доста по-голяма точност от float и ако ни е необходима голяма точност след десетичния знак, ще ползваме него." - double

Не съм искал да го прочета отново, защото го прочетох много пъти, но не го разбирам.

За да имам някаква полза от коментарите сравнете двете твърдения, а не преписвайте едното.

Не се хваля, исках да отбележа, че ми е наистина важно да разбера.

Благодаря за бързата реакция

-2
DiyanTonchev92 avatar DiyanTonchev92 233 Точки

Под "представяне с плаваща запетая" се имат предвид и float и double.

P.S. Има и демо примери, които сравняват float и double на същата страница.

0
03/09/2015 11:10:48
KatyaMarincheva avatar KatyaMarincheva 572 Точки

Здравей, Цанимире,

в текстовете, които цитираш се говори от дена страна за floating-point types - тях коментира текста, който говори за "представянето с плаваща запетая"

https://msdn.microsoft.com/en-us/library/9ahet949.aspx

от друга страна, в понятието floating point types, влизат два типа данни - това са float и double, единият от които (double) - дава по-голяма точност: "реалният тип double запазва доста по-голяма точност ".

1
PavelManahilov avatar PavelManahilov 216 Точки

Най-обобщено казано (поне това което аз разбрах за типовете данни) е че типа данни float може да съдържа в себе си числа с до 7 цифри, независимо къде е десетичната запетая, докато типа double може да съдържа 15-16 цифри в себе си, отново независимо къде е запетаята.

1
03/09/2015 10:57:32
DiyanTonchev92 avatar DiyanTonchev92 233 Точки

И по-точно - става дума за точност. Т.е едното закръгля на 7-я знак, а другото на 15-16-я

0
DiyanTonchev92 avatar DiyanTonchev92 233 Точки

Да съм написал някъде "след запетаята"? smiley

2
03/09/2015 11:25:36
BobbyBG avatar BobbyBG 1 Точки

Float - 32 bit (7 digits)

Double - 64 bit (15-16 digits)

Decimal - 128 bit (28-29 significant digits)

0
canimirangelov avatar canimirangelov 19 Точки

Въпросът беше изяснен, вече разбрах какво се има предвид. Неразбирането ми идваше от това, че не знаех, че и float и double са floating point types, а мислех, че това се отнася само до float. 

Благодаря за помощта.

0