Cara Menggunakan Setprecision dalam C++

Cara Menggunakan Setprecision Dalam C



Anda mungkin telah mempelajari dan mengkaji nilai titik terapung dan tatatanda saintifik dalam matematik dan fizik. Anda mungkin juga telah belajar untuk melakukan pusingan pada nombor titik terapung. Utiliti setprecision dalam C++ sering digunakan untuk mengubah jujukan nombor yang dipaparkan di dalam jujukan output integer titik terapung. Ia berfungsi sama seperti fungsi pusingan. Kaedah ini ditakrifkan dalam pustaka standard. Dalam tutorial ini, kami akan menunjukkan kepada anda cara menggunakan fungsi 'setprecision' C++. Jadi, mari kita mulakan. Kita mesti memulakan aplikasi shell Ubuntu melalui “Ctrl+Alt+T” untuk mengusahakannya. Kami perlu memulakan pemasangan pengkompil C++, iaitu g++ dalam kes kami. Jadi, pakej apt akan digunakan untuk tujuan ini setakat ini. Sistem akan memasang g++ dalam beberapa saat sahaja: $ sudo apt pasang g++

Contoh 01:

Jadi, kami telah membuka fail 'new.cc' dengan arahan 'nano'. Fail ini dibuat dengan menggunakan pertanyaan 'sentuhan' shell. Fail itu kini dilancarkan dalam editor nano sebagai fail kosong. Kami telah menambah fail pengepala 'iostream' input-output di bahagian atas. Pustaka 'iomanip' telah ditambahkan untuk menggunakan kaedah setprecision() kod kami. Selepas ini, kami menggunakan ruang nama standard 'std' untuk memastikan kami menggunakan cara standard kod dan sintaks. Kod keseluruhan telah dilakukan dalam fungsi utama() kod C++. Tiada fungsi lain yang ditentukan pengguna digunakan untuk tujuan ini.







Dalam fungsi main(), kami telah memulakan pembolehubah jenis berganda 'v' dengan nilai berganda. Pernyataan standard 'cout' pertama memaparkan nilai pembolehubah berganda sebenar 'v' pada shell tanpa sebarang kemas kini. Selepas ini, kami telah menggunakan 8 pernyataan cout untuk menggunakan kaedah setprecision() dalam setiap satu. Ini adalah untuk menggunakan setprecision() pada pembolehubah 'v' setiap titik terapung setiap kali. Anda mesti faham bahawa setprecision hanya berfungsi pada nilai yang lebih besar daripada atau sama dengan 5. Jika nilai titik terapung lebih besar daripada 5, ia akan menambah nilai sebelum itu.



Sebagai contoh, setprecision() pada titik terapung pertama akan membulatkan '5' selepas titik, dan nilai '4' akan ditukar kepada 5. Begitu juga, nilai titik terapung kedua '2' tidak boleh dibundarkan, Nilai titik terapung ke-3 '7' akan menukar nilai '2' kepada '3', nilai titik terapung ke-4 '4' tidak boleh dibundarkan dan nilai titik terapung ke-5 '9' akan menukar nilai '4 ” hingga 5 sebelum itu. Pada titik '0' akan menukar nilai '4' kepada 5. Setprecision() negatif tidak melakukan apa-apa tetapi memaparkan keseluruhan nilai sebenar. Semua nilai pada titik terapung 0 hingga 5 dan -1, -2 akan dipaparkan selepas menggunakan setprecision():







Tiba masanya untuk menyusun dan menjalankan kod setprecision C++ dengan pertanyaan kompilasi g++ dan pertanyaan pelaksanaan './a.out'. Output menunjukkan bahawa setprecision(1) pertama menukarkan 4 kepada 5. Setprecision(2) tidak melakukan apa-apa dan memaparkan '4.5'. Setprecision(3) menambah nilai daripada '4.52' kepada '4.53'. Setprecision(4) tidak melakukan apa-apa kepada nilai '4.527'. Setprecision(5) menambah nilai daripada '4.5274' kepada '4.5275'. Setprecision(0) menambah nilai kepada 5. Setprecision(-1) dan setprecision(-2) tidak melakukan apa-apa seperti yang ditunjukkan di bawah:

$ g++ baru.cc

$. / a.keluar



Contoh 02:

Mari kita lihat contoh lain. Kod ini serupa dengan contoh di atas, dengan hanya perubahan dalam pernyataan coutnya. Cout pertama menunjukkan nilai asal manakala dua seterusnya menunjukkan hasil setprecision() pada titik terapung 1 dan 5. Cout terakhir memaparkan hasil kaedah setprecision() pada floating-point 9, yang secara fizikalnya tidak tersedia. Keputusan titik terapung 1 dan 5 agak dijangka, tetapi kami tidak boleh mengatakan apa-apa tentang titik terapung 9. Mari kita laksanakan fail dan semak apa yang akan menjadi output kod ini:

#include

#include

menggunakan ruang nama std ;

int utama ( ) {

berganda dalam = 4.52749 ;

cout << 'Nilai Sebelum setprecision : ' << dalam << ' \n ' ;

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

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

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

kembali 0 ;

}

Selepas penyusunan dan pelaksanaan kod ini, kami mempunyai hasil yang jelas untuk setprecision pada lokasi 1 dan 3 nilai titik terapung '4.52749'. Keputusan setprecision 9 menunjukkan nilai sebenar pembolehubah berganda “v”. Ini mungkin disebabkan oleh fakta bahawa nilai untuk lokasi 9 tidak ditetapkan:

$ g++ baru.cc

$. / a.keluar

Mari kemas kini kod sekali lagi untuk menetapkan nilai pembolehubah 'v'. Jadi, selepas pernyataan cout setprecision() pertama digunakan di lokasi pertama pembolehubah, kami telah menggunakan pembolehubah tetap dalam cout:

#include

#include

menggunakan ruang nama std ;

int utama ( ) {

berganda dalam = 4.52749 ;

cout << 'Nilai Sebelum setprecision : ' << dalam << ' \n ' ;

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

cout << tetap ;

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

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

kembali 0 ;

}

Selepas menyusun dan menjalankan kod yang dikemas kini ini, kami mempunyai hasil tetap setprecision di lokasi 9 pembolehubah 'v', iaitu, 4.527490000:

$ g++ baru.cc

$. / a.keluar

Kesimpulan:

Akhir sekali, ini adalah tentang menggunakan kaedah setprecision() dalam kod C++ untuk membulatkan dan memaparkan nilai pembolehubah berganda. Kami juga telah menerangkan pembolehubah tetap dalam kod dan faedahnya. Selain itu, kami telah melaksanakan dua contoh penting untuk menerangkan konsep ketepatan set dalam C++. Kami harap anda mendapati artikel ini membantu. Lihat artikel Petunjuk Linux yang lain untuk mendapatkan lebih banyak petua dan tutorial.