组合条件
本课属于 Coddy Arduino 学习旅程的“初识电路”单元。第 21 课,共 22 课。
两个条件可以合并为一个:
&&表示且:只有两边都为 true 时才为 true||表示或:至少一边为 true 时就为 true
if (count >= 3 && count <= 7) { ... } // 3、4、5、6 或 7
if (count == 1 || count == 9) { ... } // 1 或 9第一个条件的意思是“count 至少为 3,且最多为 7”:这是一个范围。第二个条件的意思是“count 为 1,或 count 为 9”。
每一边都必须是一个完整的比较表达式。count == 1 || 9 并不表示“1 或 9”:右边单独的 9 会被棋盘视为 true,因此整个条件始终为 true。
count >= 3 || count <= 7 也始终为 true,因为每个数字都要么至少为 3,要么最多为 7。要表示一个范围,需要使用 &&。
挑战
中等初始代码每 300 ms 计数一次。红色 LED 接在引脚 8 上,绿色 LED 接在引脚 9 上。每次循环时:
- 当
count的值为 4 到 6(4、5 或 6)时,点亮绿色 LED;否则熄灭 - 当
count的值为 2 或 8 时,点亮红色 LED;否则熄灭
按下运行,然后按下检查。
亲手试试
int count = 0;
void setup() {
pinMode(8, OUTPUT); // 红灯
pinMode(9, OUTPUT); // 绿灯
Serial.begin(9600);
}
void loop() {
count = count + 1;
Serial.println(count);
// 绿灯在 4 到 6 时亮,红灯在 2 和 8 时亮
delay(300);
}
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
初识电路中的所有课
自己练习: Arduino 在线编辑器