Hàm setprecision trong c++ nhận vào một giá trị số nguyên, nhưng mục đích của hàm này là định dạng số lượng chữ số trong phần thập phân của kiểu số thực.
Xem thêm:
1. Hàm setprecison c++ là gì?
Hàm setprecision
trong C++ thuộc thư viện <iomanip>
, được sử dụng để định dạng số thực theo yêu cầu, giúp kiểm soát số lượng chữ số sau dấu thập phân. Hàm này rất hữu ích khi cần hiển thị dữ liệu số với độ chính xác cao hoặc định dạng đẹp mắt.
2. Cách khai báo và sử dụng setprecision
Để sử dụng hàm setprecision()
trong C++, bạn cần:
- Khai báo thư viện
<iomanip>
- Sử dụng không gian tên
std
.
Bằng cách sử dụng setprecision()
, bạn có thể hiển thị số thực một cách chính xác với số lượng chữ số sau dấu thập phân xác định.
Ví dụ minh hoạ:
Làm tròn số 3.14159 với độ chính xác sau dấu thập phân là 3 thì kết quả sẽ là: 3.14.
#include <iostream> #include <iomanip> using namespace std; int main() { double pi = 3.14159; cout << setprecision(3) << pi << endl; // Kết quả: 3.14 return 0; }
3. Fixed setprecision c++
Hiển thị đủ số chữ số sau dấu thập phân bằng fixed
:
cout << setprecision(n) << f
in số thập phân f
làm tròn đến n chữ số thập phân. Nhưng nếu f
có ít hơn n chữ số phần thập phân, ví dụ như:
f = 1.2 n = 3
thì khi cout << setprecision(n) << f
sẽ chỉ in ra 1.2 mà không hiện đầy đủ 3 chữ số phần thập phân.
Do vậy, nếu muốn in f = 1.2
với chữ số thập phân thành f = 1.200
thì thêm fixed
. “fixed” trong tiếng Anh có nghĩa là “cố định”. Ta phải cố định in ra n chữ số phần thập phân thì ta mới thấy kết quả như mong đợi.
f = 1.2 n = 3 cout << setprecision(n) << fixed << f;
kết quả sẽ ra 1.200.
4. Cách lấy 2 số sau dấu phẩy trong c++
Bài 1: (TH-CSLT-01). Vận tốc của phương tiện được tính bằng quãng đường đi được S trong một khoảng thời gian là T. Hãy thực hiện nhập giá trị cho S và T, sau đó hiển thị vận tốc của phương tiện với độ chính xác là 02 chữ số của phần thập phân.
Lưu ý, quãng đường đi được có thể không nguyên, còn thời gian được qui định là nguyên.
Xem thêm: Bài 2: (TH-CSLT-02): viết chương trình nhập họ và tên c++
gồm: Mã học sinh, Họ tên, Ngày sinh, Lớp, Số buổi ăn bán trú. In ra màn hình các
thông tin: Mã học sinh, Họ tên, Ngày sinh, Lớp, Số buổi ăn bán trú, Số tiền ăn bán
trú (biết đơn giá là 25000đ/ 1 buổi ăn bán trú). Thông tin in ra theo 2 cách: các thông tin in hết trong một dòng hoặc mỗi thông tin in trên một dòng.
Phân tích bài toán
A.Input: vận tốc S, thời gian T.
B.Output: Vận tốc = S/T, vận tốc của phương tiện với độ chính xác là 02 chữ số của phần thập phân.
C. Process:
Bước 1: Khai báo biến chương trình: S: float, T: int, V: float
.
Bước 2: Nhập dữ liệu:
- Nhập quãng đường S.
- Nhập thời gian T.
Bước 3: Thực hiện tính toán: V= S/T
Bước 4: In kết quả lên màn hình.
Sử dụng hàm làm tròn số trong c++
Sử dụng fixed và setprecision(2) để hiển thị vận tốc với độ chính xác là 02 chữ số của phần thập phân.
cout << "Van toc: " << setprecision(2) << fixed << vantoc << endl;
Cài đặt chương trình
Dưới đây là chương trình sử dụng hàm fixed làm tròn trong c++:
#include <iostream> #include <iomanip> using namespace std; int main() { float S, V; int T; cout<<"Nhap quang duong S: "; cin>>S; cout<<"Nhap thoi gian T: "; cin>>T; V= S/T; cout<<"Van toc cua phuong tien la: "<<setprecision(2)<<fixed<<V; return 0; }
Kết quả chạy chương trình
Tài tài liệu thực hành lập trình C/C++:
Trên đây là thông tin về hàm setprecision trong c++ giúp định dạng dữ liệu số, đảm bảo rằng số thực được hiển thị theo yêu cầu và đúng với chuẩn đầu ra mong đợi kèm ví dụ và lời giải chi tiết Cảm ơn các bạn tham khảo bài tập ngôn ngữ lập trình C/C++ trên ttnguyen.net.
Bài viết liên quan: