C Programmering

Stille inn desimal presisjon i C-språk

Stille inn desimal presisjon i C-språk

Denne artikkelen vil vise deg hvordan du angir desimal presisjon i C-programmeringsspråk. Først vil vi definere presisjon, og deretter vil vi se på flere eksempler for å vise hvordan du angir desimal presisjon i C-programmering.

Desimal presisjon i C

Heltallstypevariabelen brukes normalt til å holde hele tallet og flyttypevariabelen for å holde de reelle tallene med brøkdeler, for eksempel 2.449561 eller -1.0587. Presisjon bestemmer nøyaktigheten til de reelle tallene og blir betegnet med prikken (.) symbol. Nøyaktigheten eller nøyaktigheten av reelle tall er angitt med antall sifre etter desimaltegnet. Så presisjon betyr antall sifre som er nevnt etter desimaltegnet i flottørtallet. For eksempel tallet 2.449561 har presisjon seks og -1.058 har presisjon tre.

I henhold til IEEE-754 representasjon med flytende punkt med en enkelt presisjon, er det totalt 32 bits for å lagre det virkelige tallet. Av de 32 bitene blir den viktigste biten brukt som tegnbit, de følgende 8 bitene brukes som en eksponent, og de følgende 23 bitene brukes som en brøkdel.

Når det gjelder IEEE-754 flytende punktrepresentasjon med dobbel presisjon, er det totalt 64 bits for å lagre det virkelige tallet. Av de 64 bitene brukes den mest betydningsfulle biten som tegnbit, de følgende 11 bitene brukes som en eksponent, og de følgende 52 bitene brukes som en brøkdel.

Når du skriver ut reelle tall, er det imidlertid nødvendig å spesifisere presisjonen (med andre ord, nøyaktigheten) til det reelle tallet. Hvis presisjonen ikke er spesifisert, vil standardpresisjonen bli vurdert, i.e., seks desimaltegn etter desimaltegnet. I de følgende eksemplene vil vi vise deg hvordan du spesifiserer presisjon når du skriver ut flytende tall i C-programmeringsspråket.

Eksempler

Nå som du har en grunnleggende forståelse av presisjon, la oss se på et par eksempler:

    1. Standard presisjon for flottør
    2. Standard presisjon for dobbelt
    3. Still presisjon for flyt
    4. Sett presisjon for dobbelt

Eksempel 1: Standard presisjon for flyt

Dette eksemplet viser at standard presisjon er satt til seks sifre etter desimaltegnet. Vi har initialisert en flytvariabel med verdien 2.7 og trykte den uten å spesifisere presisjonen.

I dette tilfellet vil standard presisjonsinnstilling sikre at seks sifre etter desimaltegnet skrives ut.

#inkludere
int main ()

flyte f = 2.7;
printf ("\ nVerdi av f =% f \ n", f);
printf ("Størrelse på flottør =% ld \ n", størrelse på (flyt));
retur 0;

Eksempel 2: Standard presisjon for dobbelt

I dette eksemplet vil du se at standardpresisjonen er satt til seks sifre etter desimaltegnet for dobbelvariabler. Vi har initialisert en dobbel variabel, i.e., d, med verdien 2.7 og skrev den ut uten å spesifisere presisjonen. I dette tilfellet vil standard presisjonsinnstilling sikre at seks sifre etter desimaltegnet skrives ut.

#inkludere
int main ()

dobbel d = 2.7;
printf ("\ nVerdi av d =% lf \ n", d);
printf ("Størrelse på dobbelt =% ld \ n", størrelse på (dobbelt));
retur 0;

Eksempel 3: Still presisjon for flyt

Nå vil vi vise deg hvordan du setter presisjon for flyteverdier. Vi har initialisert en flytevariabel, jeg.e., f, med verdien 2.7, og skrev den ut med forskjellige presisjonsinnstillinger. Når vi nevner “% 0.4f ”i printf-setningen, indikerer dette at vi er interessert i å skrive ut fire sifre etter desimaltegnet.

#inkludere
int main ()

flyte f = 2.7;
/ * sett presisjon for flytevariabel * /
printf ("\ nVerdi av f (presisjon = 0.1) =% 0.1f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.2) =% 0.2f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.3) =% 0.3f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.4) =% 0.4f \ n ", f);
printf ("\ nVerdien av f (presisjon = 0.22) =% 0.22f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.23) =% 0.23f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.24) =% 0.24f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.25) =% 0.25f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.40) =% 0.40f \ n ", f);
printf ("Størrelse på flottør =% ld \ n", størrelse på (flyt));
retur 0;

Eksempel 4: Sett presisjon for dobbelt

I dette eksemplet vil vi se hvordan du setter presisjon for doble verdier. Vi har initialisert en dobbel variabel, i.e., d, med verdien 2.7 og skrev den ut med forskjellige presisjonsinnstillinger. Når vi nevner “% 0.52f ”i printf-setningen, indikerer dette at vi er interessert i å skrive ut 52 sifre etter desimaltegnet.

#inkludere
int main ()

flyte f = 2.7;
/ * sett presisjon for flytevariabel * /
printf ("\ nVerdi av f (presisjon = 0.1) =% 0.1f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.2) =% 0.2f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.3) =% 0.3f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.4) =% 0.4f \ n ", f);
printf ("\ nVerdien av f (presisjon = 0.22) =% 0.22f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.23) =% 0.23f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.24) =% 0.24f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.25) =% 0.25f \ n ", f);
printf ("\ nVerdi av f (presisjon = 0.40) =% 0.40f \ n ", f);
printf ("Størrelse på flottør =% ld \ n", størrelse på (flyt));
retur 0;

Konklusjon

Presisjon er en veldig viktig faktor for å representere et reelt tall med tilstrekkelig nøyaktighet. Programmeringsspråket c gir mekanismen for å kontrollere nøyaktigheten eller nøyaktigheten til et reelt tall. Vi kan imidlertid ikke endre den faktiske presisjonen til det virkelige tallet. For eksempel er brøkdelen av et 32-bits flytende punktnummer med en presisjon representert med 23 bits, og dette er løst; vi kan ikke endre dette for et bestemt system. Vi kan bare bestemme hvor mye nøyaktighet vi ønsker ved å stille inn ønsket presisjon for det virkelige tallet. Hvis vi trenger mer nøyaktighet, kan vi alltid bruke 64-biters flytende punktnummer med dobbel presisjon.

Mus Kartlegg museknappene på en annen måte for annen programvare med X-Mouse Button Control
Kartlegg museknappene på en annen måte for annen programvare med X-Mouse Button Control
Kanskje du trenger et verktøy som kan gjøre at musens kontroll endres med hvert program du bruker. Hvis dette er tilfelle, kan du prøve et program som...
Mus Microsoft Sculpt Touch Wireless Mouse Review
Microsoft Sculpt Touch Wireless Mouse Review
Jeg har nylig lest om Microsoft Sculpt Touch trådløs mus og bestemte meg for å kjøpe den. Etter å ha brukt den en stund bestemte jeg meg for å dele mi...
Mus AppyMouse Pekeplate og musepeker på skjermen for Windows-nettbrett
AppyMouse Pekeplate og musepeker på skjermen for Windows-nettbrett
Nettbrettbrukere savner ofte musepekeren, spesielt når de bruker vanlige bærbare datamaskiner. Berøringsskjermen Smarttelefoner og nettbrett har mange...