Paano Gamitin ang Setprecision sa C++

Paano Gamitin Ang Setprecision Sa C



Maaaring natutunan at pinag-aralan mo ang mga floating-point na halaga at ang siyentipikong notasyon sa matematika at pisika. Maaaring natuto ka ring magsagawa ng round-off sa mga floating-point na numero. Ang setprecision utility sa C++ ay kadalasang ginagamit upang baguhin ang pagkakasunud-sunod ng mga numero na ipinapakita sa loob ng isang floating-point integer na pagkakasunud-sunod ng output. Gumagana ito katulad ng pag-andar ng round-off. Ang pamamaraang ito ay tinukoy sa karaniwang library. Sa tutorial na ito, ipapakita namin sa iyo kung paano gamitin ang function na 'setprecision' ng C++. Kaya, magsimula tayo. Dapat nating simulan ang Ubuntu shell application sa pamamagitan ng “Ctrl+Alt+T” para magawa ito. Kailangan nating simulan ang pag-install ng C++ compiler, na g++ sa ating kaso. Kaya, ang apt package ay gagamitin para sa layuning ito sa ngayon. I-install ng system ang g++ sa loob lamang ng ilang segundo: $ sudo apt i-install g++

Halimbawa 01:

Kaya, binuksan namin ang 'new.cc' na file na may 'nano' na pagtuturo. Nilikha ang file na ito sa pamamagitan ng paggamit ng query na 'touch' ng shell. Ang file ay inilunsad na ngayon sa nano editor bilang isang walang laman na file. Idinagdag namin ang input-output na 'iostream' na header file sa itaas. Ang library na 'iomanip' ay idinagdag upang magamit ang pamamaraan ng setprecision() ng aming code. Pagkatapos nito, ginamit namin ang karaniwang namespace na 'std' upang matiyak na ginagamit namin ang karaniwang paraan ng code at syntax. Ang pangkalahatang code ay isinagawa sa loob ng main() function ng C++ code. Walang ibang function na tinukoy ng user ang ginagamit para sa layuning ito.







Sa loob ng main() function, nag-initialize kami ng double type variable na 'v' na may double value. Ang unang 'cout' standard statement ay nagpapakita ng aktwal na double variable na value na 'v' sa shell nang walang anumang update. Pagkatapos nito, gumamit kami ng 8 cout statement para gamitin ang setprecision() method sa bawat isa. Ito ay para ilapat ang setprecision() sa variable na 'v' sa bawat floating-point sa bawat oras. Dapat mong maunawaan na ang setprecision ay gumagana lamang sa halagang mas malaki kaysa sa o katumbas ng 5. Kung ang floating-point na halaga ay mas malaki kaysa sa 5, tataas nito ang halaga bago nito.



Halimbawa, ang setprecision() sa 1st floating-point ay ira-round off ang '5' pagkatapos ng point, at ang value na '4' ay mako-convert sa 5. Katulad nito, ang 2nd floating-point value na '2' ay hindi maaaring i-round off, ang Iko-convert ng ikatlong floating-point value na '7' ang value na '2' sa '3', ang ika-4 na floating-point value na '4' ay hindi maaaring i-round off, at ang ika-5 na floating-point value na '9' ay magko-convert ng value na '4 ” hanggang 5 bago ito. Sa puntong '0' ay iko-convert ang value na '4' sa 5. Ang negatibong setprecision() ay walang ginagawa kundi ipakita ang buong aktwal na halaga. Ang lahat ng mga halaga sa mga lumulutang na punto 0 hanggang 5 at -1, -2 ay ipapakita pagkatapos ilapat ang setprecision():







Oras na para i-compile at patakbuhin ang setprecision C++ code na may g++ compilation query at ang './a.out' execution query. Ang output ay nagpapakita na ang unang setprecision(1) ay nagko-convert ng 4 sa 5. Ang setprecision(2) ay walang ginawa at nagpapakita ng '4.5'. Ang setprecision(3) ay nagdagdag ng halaga mula sa '4.52' hanggang sa '4.53'. Walang ginagawa ang setprecision(4) sa value na “4.527”. Ang setprecision(5) ay dinadagdagan ang halaga mula sa '4.5274' hanggang sa '4.5275'. Ang setprecision(0) ay dinagdagan ang halaga sa 5. Ang setprecision(-1) at setprecision(-2) ay walang ginawa tulad ng ipinapakita sa ibaba:

$ g++ bago.cc

$. / a.labas



Halimbawa 02:

Tingnan natin ang isa pang pagkakataon. Ang code ay katulad ng halimbawa sa itaas, na may pagbabago lamang sa mga pahayag ng cout nito. Ang unang cout ay nagpapakita ng mga orihinal na halaga habang ang susunod na dalawa ay nagpapakita ng resulta ng setprecision() sa mga lumulutang na punto 1 at 5. Ang huling cout ay nagpapakita ng resulta ng setprecision() na pamamaraan sa floating-point 9, na pisikal na hindi magagamit. Ang 1 at 5 na mga resulta ng floating-point ay lubos na inaasahan, ngunit wala kaming masasabi tungkol sa floating-point 9. I-execute lang natin ang file at tingnan kung ano ang magiging output ng code na ito:

#include

#include

gamit namespace std ;

int pangunahing ( ) {

doble sa = 4.52749 ;

cout << 'Halaga Bago ang setprecision : ' << sa << ' \n ' ;

cout << setprecision ( 1 ) << 'Val sa 1: ' << sa << ' \n ' ;

cout << setprecision ( 5 ) << 'Val sa 5: ' << sa << ' \n ' ;

cout << setprecision ( 9 ) << 'Val sa 9: ' << sa << ' \n ' ;

bumalik 0 ;

}

Pagkatapos ng compilation at execution ng code na ito, mayroon kaming mga malinaw na resulta para sa setprecision sa mga lokasyon 1 at 3 ng floating-point value na '4.52749'. Ang resulta ng setprecision 9 ay nagpapakita ng aktwal na halaga ng double variable na 'v'. Ito ay maaaring dahil sa ang katunayan na ang halaga para sa lokasyon 9 ay hindi naayos:

$ g++ bago.cc

$. / a.labas

I-update na lang natin muli ang code para ayusin ang mga value ng variable na 'v'. Kaya, pagkatapos ng unang setprecision() cout statement na inilapat sa unang lokasyon ng variable, ginamit namin ang fixed variable sa cout:

#include

#include

gamit namespace std ;

int pangunahing ( ) {

doble sa = 4.52749 ;

cout << 'Halaga Bago ang setprecision : ' << sa << ' \n ' ;

cout << setprecision ( 1 ) << 'Val sa 1: ' << sa << ' \n ' ;

cout << nakapirming ;

cout << setprecision ( 5 ) << 'Val sa 5: ' << sa << ' \n ' ;

cout << setprecision ( 9 ) << 'Val sa 9: ' << sa << ' \n ' ;

bumalik 0 ;

}

Pagkatapos i-compile at patakbuhin ang na-update na code na ito, mayroon kaming nakapirming resulta ng setprecision sa lokasyon 9 ng isang variable na 'v', ibig sabihin, 4.527490000:

$ g++ bago.cc

$. / a.labas

Konklusyon:

Sa wakas, ito ay tungkol sa paggamit ng setprecision() na pamamaraan sa C++ code upang i-round off at ipakita ang halaga ng isang double variable. Ipinaliwanag din namin ang mga fixed variable sa code at ang mga benepisyo nito. Dagdag pa, nagpatupad kami ng dalawang mahalagang halimbawa upang ipaliwanag ang konsepto ng set precision sa C++. Inaasahan namin na nakatulong ang artikulong ito. Tingnan ang iba pang mga artikulo ng Hint ng Linux para sa higit pang mga tip at tutorial.