![]() |
|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Jul 2012
Bài gửi: 2
: |
Help. Phép tính bị sai trong ccs.
Mình lập trình pic16f877a. Không hiểu tại sao khi code: a=(-8)^2+1 thì kết quả là -15, còn a=5/4 thì kết quả là 1. Ai có thể giải thích giúp mình lỗi này và cách sửa được không? Câu hỏi hơi ngớ ngẩn, mọi nguoi thông cảm.
|
![]() |
![]() |
![]() |
#2 |
Nhập môn đệ tử
Tham gia ngày: Jul 2011
Bài gửi: 5
: |
trong C mình nhớ hàm ^ là phép tính XOR chứ ko phải hàm mũ , còn cái 5/4 bằng 1 là do phép chia này là chia lấy phần nguyên , nên nó =1, bạn muốn lấy phần dư thì a=5%4
|
![]() |
![]() |
![]() |
#3 |
Nhập môn đệ tử
Tham gia ngày: Jul 2012
Bài gửi: 2
: |
vậy mình muôn lây số thực thì sao bạn? Vì mình cho biến a là float rồi thì kết quả sao không phải là a=5/4=1.25?
|
![]() |
![]() |
![]() |
#4 |
Đệ tử 6 túi
Tham gia ngày: Apr 2009
Bài gửi: 132
: |
lâu rồi mình không xài nhưng theo mình bạn muốn lấy cả phần nguyên và phần dư thì bạn chỉ cẩn gán 1 biến khác hiển thị cả 2 kết quả thôi : x= (a =5/4).b=(5%4) - ngu kiến của mình bạn có thể thử
![]() |
![]() |
![]() |
![]() |
#5 |
Nhập môn đệ tử
Tham gia ngày: Jun 2013
Bài gửi: 5
: |
giả sử bạn khai báo int8 b=5,c=4;
float a; và a=b/c sẽ dc là 1.25 |
![]() |
![]() |
![]() |
Ðiều Chỉnh | |
Xếp Bài | |
|
|