01/10/2018, 00:20

Đổi số thập phân sang phân số trong class

Hàm chuyển đối từ số thập phân sang phân số trong class, mình đang gặp lỗi là nếu nhập số thập phân là 0.3278 thì nó sẽ xuất ra là 3277/10000 hoặc là 0.333333333333 thì nó không ra được 1/3, ai giúp em gợi ý chỗ em sửa với ạ

    PhanSo::PhanSo(double a)
    {
    	int mau = 1;
    	while (a - floorf(a) > 0)
    	{
    		mau *= 10;
    		a *= 10;
    	}
    	int tu = a;
    	this->TuSo = tu;
    	this->MauSo = mau;
    }
Thanh Bình Lê viết 02:36 ngày 01/10/2018
 PhanSo::PhanSo(double a)
{
	int mau = 1;
	while (a - floorf(a) > 0)
	{
		mau *= 10;
		a *= 10;
	}
	int tu = a;
	this->TuSo = tu;
	this->MauSo = mau;
}
Tao Không Ngu. viết 02:30 ngày 01/10/2018

0.333333333333 không bằng 1/3.

Thanh Bình Lê viết 02:24 ngày 01/10/2018

vậy thì mình đổi số vô hạn không được hả bạn, còn nếu mình muốn đổi 0.3278 sang 3278/10000 thì sao bạn?

Tao Không Ngu. viết 02:21 ngày 01/10/2018

Bạn tìm tối gianr phân số. UCLN.

Thanh Bình Lê viết 02:23 ngày 01/10/2018

mình không có nói rút gọn bạn, ý mình là từ 0.3278 chuyển thành 3278/10000 đó bạn

Tao Không Ngu. viết 02:22 ngày 01/10/2018

Đếm số chữ số phần thập phân. @_@!

Bài liên quan
0