Sai lệch khi dùng hàm pow

Xin chào anh chị, em là sinh viên năm nhất !
Khi làm bt về số Amstrong em có thắc mắc khi dùng pow trong thư viện cmath: là khi tính bị mất đi 1 đơn vị cụ thể ở đây là 5^3+3^3=151 trong khi em gọi hàm thì tính chính xác là 3^3+5^3=152
Cảm phiền anh chị thông não em phát !!! Em cảm ơn:blush::blush::blush::blush:

Nhiều khi là do compiler :smiley: nhưng tính toán số thực cũng chỉ là gần đúng, có thể ra 124.99 gì đó => hớt phần nguyên thì còn 124 thôi.

3 Likes

Ồ @@ em cảm ơn nhiều

Hi Khang Dương.
Code mình thính ra bt bạn thử bug lại xem.

1 Like

Tự viết lại hàm pow cho số nguyên đi, như poi (power of integer)

int poi(int base, unsigned int exp)
{
  int pow = 1;
  for (; exp > 0; --exp)
    pow *= base;
  return pow;
}
3 Likes

em cảm ơn nhiều :))))))))))))))))))))))))))))))

trình biên dịch bạn xài là trình biên dịch nào vậy

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?