Hàm setprecision trong c++ | Lấy độ chính xác 2 chữ số thập phân

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.

Setprecison c++ là gì?

Hàm setprecision() dùng để định dạng số thực theo yêu cầu của người dùng, giúp kiểm soát số lượng chữ số sau dấu thập phân, hiển thị một số ít chữ số đến việc hiển thị nhiều chữ số chính xác hơn.

Khai báo setprecision

Để sử dụng hàm setprecision() trong C++, bạn cần khai báo thư viện <iomanip> và sử dụng không gian tên std.

Cách dùng setprecision trong c++

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ụ: 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.

Fixed setprecision c++

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.

Ví dụ setprecision 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 vào họ tên một học sinh

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.

1. 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.

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

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;

3. Cài đặt chương trình tính vận tốc với độ chính xác 2 chữ số thập phân c++

Dưới đây là chương trình c++ tính vận tốc phương tiện:

#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;
}

4.Kết quả

tính vận tốc của phương tiện

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.

Nguyễn Tiến Trường

Mình viết về những điều nhỏ nhặt trong cuộc sống, Viết về câu chuyện những ngày không có em