Ako používať Setprecision v C++

Ako Pouzivat Setprecision V C



Možno ste sa naučili a študovali hodnoty s pohyblivou rádovou čiarkou a vedecký zápis v matematike a fyzike. Možno ste sa tiež naučili zaokrúhľovať čísla s pohyblivou rádovou čiarkou. Pomôcka setprecision v C++ sa často používa na zmenu poradia čísel zobrazených vo výstupnej sekvencii celého čísla s pohyblivou rádovou čiarkou. Funguje rovnako ako funkcia zaokrúhľovania. Táto metóda je definovaná v štandardnej knižnici. V tomto návode vám ukážeme, ako používať funkciu C++ „setprecision“. Takže, začnime. Aby sme na nej mohli pracovať, musíme spustiť shellovú aplikáciu Ubuntu pomocou „Ctrl+Alt+T“. Musíme inicializovať inštaláciu kompilátora C++, čo je v našom prípade g++. Takže zatiaľ bude na tento účel slúžiť balík apt. Systém nainštaluje g++ v priebehu niekoľkých sekúnd: $ sudo apt Inštalácia g++

Príklad 01:

Takže sme otvorili súbor „new.cc“ s inštrukciou „nano“. Tento súbor je vytvorený pomocou „dotykového“ dotazu shellu. Súbor sa teraz spustí v editore nano ako prázdny súbor. Do hornej časti sme pridali vstupno-výstupný súbor hlavičky „iostream“. Bola pridaná knižnica „iomanip“, ktorá používa metódu setprecision() nášho kódu. Potom sme použili štandardný menný priestor „std“, aby sme sa uistili, že používame štandardný spôsob kódu a syntaxe. Celkový kód bol vykonaný v rámci funkcie main() kódu C++. Na tento účel sa nepoužíva žiadna iná funkcia definovaná používateľom.







V rámci funkcie main() sme inicializovali premennú dvojitého typu „v“ s dvojitou hodnotou. Prvý štandardný príkaz „cout“ zobrazuje skutočnú hodnotu dvojitej premennej „v“ na shell bez akejkoľvek aktualizácie. Potom sme použili 8 príkazov cout na použitie metódy setprecision() v každom z nich. Toto má použiť setprecision() na každú premennú „v“ s pohyblivou rádovou čiarkou zakaždým. Musíte pochopiť, že setprecision funguje iba na hodnote väčšej alebo rovnej 5. Ak je hodnota s pohyblivou rádovou čiarkou väčšia ako 5, zvýši hodnotu pred ňou.



Napríklad, setprecision() pri 1. pohyblivej rádovej čiarke zaokrúhli „5“ za bodkou a hodnota „4“ sa skonvertuje na 5. Podobne 2. hodnota s pohyblivou rádovou čiarkou „2“ sa nedá zaokrúhliť, 3. hodnota s pohyblivou rádovou čiarkou „7“ prevedie hodnotu „2“ na „3“, štvrtá hodnota s pohyblivou rádovou čiarkou „4“ sa nedá zaokrúhliť a 5. hodnota s pohyblivou rádovou čiarkou „9“ prevedie hodnotu „4“. “ až 5 pred ním. V bode „0“ skonvertuje hodnotu „4“ na 5. Záporná funkcia setprecision() nerobí nič, len zobrazuje celú skutočnú hodnotu. Všetky hodnoty v pohyblivých bodoch 0 až 5 a -1, -2 sa zobrazia po použití setprecision():







Je čas skompilovať a spustiť kód C++ setprecision s kompilačným dotazom g++ a vykonávacím dotazom „./a.out“. Výstup ukazuje, že prvá setprecision(1) konvertuje 4 na 5. Setprecision(2) neurobila nič a zobrazí „4.5“. Setprecision(3) zvýšilo hodnotu z „4.52“ na „4.53“. Setprecision(4) nerobí nič s hodnotou „4.527“. Setprecision(5) zvyšuje hodnotu z „4.5274“ na „4.5275“. Setprecision(0) zvýšilo hodnotu na 5. Setprecision(-1) a setprecision(-2) nerobili nič, ako je uvedené nižšie:

$ g++ new.cc

$. / a.out



Príklad 02:

Pozrime sa na ďalší prípad. Kód je podobný vyššie uvedenému príkladu, len so zmenou v jeho príkazoch cout. Prvý cout zobrazuje pôvodné hodnoty, zatiaľ čo ďalšie dva zobrazujú výsledok setprecision() s pohyblivou rádovou čiarkou 1 a 5. Posledný cout zobrazuje výsledok metódy setprecision() s pohyblivou rádovou čiarkou 9, ktorá fyzicky nie je dostupná. Výsledky 1 a 5 s pohyblivou rádovou čiarkou sú celkom očakávané, ale nemôžeme povedať nič o pohyblivej rádovej čiarke 9. Spustite súbor a skontrolujte, čo bude výstupom tohto kódu:

#include

#include

použitím menný priestor std ;

int Hlavná ( ) {

dvojitý v = 4,52749 ;

cout << 'Hodnota pred nastavením presnosti: ' << v << ' \n ' ;

cout << nastavená presnosť ( 1 ) << 'Val at 1: ' << v << ' \n ' ;

cout << nastavená presnosť ( 5 ) << 'Val o 5: ' << v << ' \n ' ;

cout << nastavená presnosť ( 9 ) << 'Val o 9:' << v << ' \n ' ;

vrátiť 0 ;

}

Po kompilácii a vykonaní tohto kódu máme zrejmé výsledky pre presnosť nastavenia na miestach 1 a 3 s pohyblivou rádovou čiarkou „4.52749“. Výsledok setprecision 9 ukazuje aktuálnu hodnotu dvojitej premennej „v“. Môže to byť spôsobené tým, že hodnota pre umiestnenie 9 nie je pevná:

$ g++ new.cc

$. / a.out

Len znova aktualizujme kód, aby sme opravili hodnoty premennej „v“. Takže po prvom príkaze setprecision() cout aplikovanom na 1. mieste premennej sme použili pevnú premennú v cout:

#include

#include

použitím menný priestor std ;

int Hlavná ( ) {

dvojitý v = 4,52749 ;

cout << 'Hodnota pred nastavením presnosti: ' << v << ' \n ' ;

cout << nastavená presnosť ( 1 ) << 'Val at 1: ' << v << ' \n ' ;

cout << pevné ;

cout << nastavená presnosť ( 5 ) << 'Val o 5: ' << v << ' \n ' ;

cout << nastavená presnosť ( 9 ) << 'Val o 9:' << v << ' \n ' ;

vrátiť 0 ;

}

Po kompilácii a spustení tohto aktualizovaného kódu máme pevný výsledok setprecision na mieste 9 premennej „v“, t. j. 4.527490000:

$ g++ new.cc

$. / a.out

Záver:

Nakoniec to bolo všetko o použití metódy setprecision() v kóde C++ na zaokrúhlenie a zobrazenie hodnoty dvojitej premennej. Vysvetlili sme aj pevné premenné v kóde a ich výhody. Navyše sme implementovali dva dôležité príklady na vysvetlenie konceptu presnosti množiny v C++. Dúfame, že vám tento článok pomohol. Ďalšie tipy a návody nájdete v iných článkoch rady Linux.