C Programovanie

Nastavenie presnosti desatinných miest v jazyku C

Nastavenie presnosti desatinných miest v jazyku C

Tento článok vám ukáže, ako nastaviť desatinnú presnosť v programovacom jazyku C. Najskôr definujeme presnosť a potom sa pozrieme na niekoľko príkladov, ktoré ukazujú, ako nastaviť desatinnú presnosť v programovaní C.

Desatinná presnosť v C

Premenná celého čísla sa zvyčajne používa na uchovanie celého čísla a premenná typu float na uchovanie skutočných čísel s zlomkovými časťami, napríklad 2.449561 alebo -1.0587. Presnosť určuje presnosť reálnych čísel a je označená bodkou (.) symbol. Presnosť alebo presnosť reálnych čísel je označená počtom číslic za desatinnou čiarkou. Presnosť teda znamená počet číslic uvedený za desatinnou čiarkou v počte float. Napríklad číslo 2.449561 má presnosť šesť a -1.058 má presnosť tri.

Podľa vyjadrenia pohyblivej rádovej čiarky s jednou presnosťou IEEE-754 existuje celkom 32 bitov na uloženie skutočného čísla. Z 32 bitov sa najvýznamnejší bit použije ako znakový bit, nasledujúcich 8 bitov sa použije ako exponent a nasledujúcich 23 bitov sa použije ako zlomok.

V prípade reprezentácie pohyblivej rádovej čiarky s dvojitou presnosťou IEEE-754 je na uloženie skutočného čísla celkovo 64 bitov. Zo 64 bitov sa najvýznamnejší bit používa ako znakový bit, nasledujúcich 11 bitov sa používa ako exponent a nasledujúcich 52 bitov sa používa ako zlomok.

Pri tlači reálnych čísel je však potrebné určiť presnosť (inými slovami presnosť) reálneho čísla. Ak presnosť nie je zadaná, bude sa brať do úvahy predvolená presnosť, t.j.e., šesť desatinných číslic za desatinnou čiarkou. V nasledujúcich príkladoch si ukážeme, ako určiť presnosť pri tlači čísel s pohyblivou rádovou čiarkou v programovacom jazyku C.

Príklady

Teraz, keď máte základné znalosti o presnosti, sa pozrime na niekoľko príkladov:

    1. Predvolená presnosť pre float
    2. Predvolená presnosť pre dvojnásobok
    3. Nastaviť presnosť plaváka
    4. Nastavte presnosť na dvojnásobok

Príklad 1: Predvolená presnosť pre Float

Tento príklad ukazuje, že predvolená presnosť je nastavená na šesť číslic za desatinnou čiarkou. Inicializovali sme floatovú premennú s hodnotou 2.7 a vytlačil ho bez výslovného uvedenia presnosti.

V takom prípade predvolené nastavenie presnosti zabezpečí vytlačenie šiestich číslic za desatinnou čiarkou.

#include
int main ()

plavák f = 2.7;
printf ("\ nHodnota f =% f \ n", f);
printf ("Veľkosť float =% ld \ n", sizeof (float));
návrat 0;

Príklad 2: Predvolená presnosť pre Double

V tomto príklade uvidíte, že predvolená presnosť je pre premenné dvojitého typu nastavená na šesť číslic za desatinnou čiarkou. Inicializovali sme dvojitú premennú, t.j.e., d, s hodnotou 2.7 a vytlačil ho bez určenia presnosti. V takom prípade predvolené nastavenie presnosti zabezpečí vytlačenie šiestich číslic za desatinnou čiarkou.

#include
int main ()

dvojité d = 2.7;
printf ("\ nHodnota d =% lf \ n", d);
printf ("Veľkosť double =% ld \ n", sizeof (double));
návrat 0;

Príklad 3: Nastavte presnosť pre Float

Teraz vám ukážeme, ako nastaviť presnosť pre pohyblivé hodnoty. Inicializovali sme floatovú premennú, t.j.e., f, s hodnotou 2.7 a vytlačil ho s rôznymi nastaveniami presnosti. Keď spomenieme „% 0.4f “vo vyhlásení printf to znamená, že máme záujem o tlač štyroch číslic za desatinnou čiarkou.

#include
int main ()

plavák f = 2.7;
/ * nastaviť presnosť pre premennú float * /
printf ("\ nHodnota f (presnosť = 0.1) =% 0.1f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.2) =% 0.2f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.3) =% 0.3f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.4) =% 0.4f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.22) =% 0.22f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.23) =% 0.23f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.24) =% 0.24f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.25) =% 0.25f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.40) =% 0.40f \ n ", f);
printf ("Veľkosť float =% ld \ n", sizeof (float));
návrat 0;

Príklad 4: Nastavte Precision na Double

V tomto príklade uvidíme, ako nastaviť presnosť pre dvojnásobné hodnoty. Inicializovali sme dvojitú premennú, t.j.e., d, s hodnotou 2.7 a vytlačil ho s rôznymi nastaveniami presnosti. Keď spomenieme „% 0.52f “vo vyhlásení printf to znamená, že máme záujem o tlač 52 číslic za desatinnou čiarkou.

#include
int main ()

plavák f = 2.7;
/ * nastaviť presnosť pre premennú float * /
printf ("\ nHodnota f (presnosť = 0.1) =% 0.1f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.2) =% 0.2f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.3) =% 0.3f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.4) =% 0.4f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.22) =% 0.22f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.23) =% 0.23f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.24) =% 0.24f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.25) =% 0.25f \ n ", f);
printf ("\ nHodnota f (presnosť = 0.40) =% 0.40f \ n ", f);
printf ("Veľkosť float =% ld \ n", sizeof (float));
návrat 0;

Záver

Presnosť je veľmi dôležitým faktorom na vyjadrenie skutočného čísla s primeranou presnosťou. Programovací jazyk c poskytuje mechanizmus na kontrolu presnosti alebo presnosti reálneho čísla. Skutočnú presnosť reálneho čísla však nemôžeme zmeniť. Napríklad zlomková časť 32-bitového čísla s presnou pohyblivou rádovou čiarkou s jednou presnosťou je reprezentovaná 23 bitmi a toto je pevné; nemôžeme to zmeniť pre konkrétny systém. O požadovanej presnosti môžeme rozhodnúť iba tak, že nastavíme požadovanú presnosť reálneho čísla. Ak potrebujeme väčšiu presnosť, môžeme kedykoľvek použiť 64-bitové číslo s pohyblivou rádovou čiarkou s dvojitou presnosťou.

Pridajte gestá myši do systému Windows 10 pomocou týchto bezplatných nástrojov
V posledných rokoch sa počítače a operačné systémy veľmi vyvinuli. Boli časy, keď používatelia museli prechádzať správcami súborov pomocou príkazov. R...
Ovládajte a spravujte pohyb myši medzi viacerými monitormi v systéme Windows 10
Správca myši s duálnym displejom umožňuje ovládať a konfigurovať pohyb myši medzi viacerými monitormi spomalením jeho pohybu blízko hranice. Windows 1...
WinMouse vám umožňuje prispôsobiť a vylepšiť pohyb ukazovateľa myši na počítači so systémom Windows
Ak chcete vylepšiť predvolené funkcie kurzora myši, použite freeware WinMouse. Pridáva ďalšie funkcie, ktoré vám pomôžu vyťažiť zo svojej skromnej myš...