% phép chia lấy dư (modulo)

Giới thiệu

Phép chia lấy dư là phép lấy về phần dư của một phép chia các số nguyên.

Cú pháp

<phần dư> = <số bị chia> / <số chia>;

Ví dụ

x = 7 % 5;   // x bây giờ là 2
x = 9 % 5;   // x bây giờ là 4
x = 5 % 5;   // x bây giờ là 0
x = 4 % 5;   // x bây giờ là 4

Mã lập trình tham khảo

/* cập nhập lại giá trị trong hàm loop */

int values[10];
int i = 0;

void setup() {}

void loop()
{
  values[i] = analogRead(0);
  i = (i + 1) % 10;   // giá trị của biến i sẽ không bao giờ vượt quá 9.
}

Lưu ý

Phép chia lấy dư không khả dụng với kiểu dữ liệu float

Reference Tags: 
lên
3 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

LED_BUILTIN

Hầu hết các mạch Arduino đều có một pin kết nối với một on-board LED (led nằm trên mạch) nối tiếp với một điện trở. LED_BUILTIN là một hằng số thay thế cho việc tuyên bố một biến có giá trị điều khiển on-board LED. Hầu hết trên các mạch Arduino, chúng có giá trị là 13

lên
8 thành viên đã đánh giá bài viết này hữu ích.

Vấn đề của số chấm động và số nguyên trong ngôn ngữ lập trình C++ trên board mạch Arduino

Có bao giờ bạn tự hỏi: "Dự án của mình làm tốt thế này, chạy ngon lành rành rành thế này, chắc không có bugs đâu?". Thực sự, nếu dự án của bạn không có phần xử lý số thực chấm động trong đó thì mình nghĩ phần code của bạn sẽ hoạt động ngon lành theo thời gian. Nhưng mà có số thực thì từ từ, chúng ta cần xét lại code. Trước đây, có một số bạn nhắn tin riêng hỏi mình về code với điểm chung là "code mình chạy ngon lành lúc đầu, sau đó bị lỗi, không rõ nguyên nhân". Loại trừ các phần code logic sai ra, thì hầu hết đều là do lỗi khi xử lý số chấm động mà không quan tâm đến nền tảng lập trình bên dưới! Mà cũng đúng, chúng ta rất dễ bị đánh lừa bởi chính đoạn code chúng ta viết. Vì nó có báo lỗi biên dịch đâu mà, kaka. Qua bài viết này, mình muốn phân tích và cùng các bạn rút kinh nghiệm về số chấm động float, cách hạn chế lỗi sai với số chấm động.

lên
22 thành viên đã đánh giá bài viết này hữu ích.