Логические операторы. Лайфхаки. Список использованных источников
⇐ ПредыдущаяСтр 13 из 13 Логические операторы Логические операторы чаще всего используются в проверке условия оператора if. & & (логическое И) Истина, если оба операнда истина (true).
if (digitalRead(2) == HIGH & & digitalRead(3) == HIGH) { // считывает состояние двух портов //... } Истина если оба порта вход/выхода HIGH
|| (логическое ИЛИ) Истина, если хотя бы один операнд истина, например:
if (x > 0 || y > 0) { //... } будет верно (истина) если x или y больше 0.
! (логическое отрицание) True, если операнд false, и наоборот, например:
if (! x) { //... } условие верно, если x - false (x равно 0).
Важно различать логический оператор " И" - & & и битовый оператор " И" - &. Тоже самое относится к логическому оператору " ИЛИ" - || и битовому оператору " ИЛИ" - |.
Пример if (a > = 10 & & a < = 20){} // условие верно, если a больше или равно 10, но меньше или равно 20 Лайфхаки Цикл for в Си гораздо более гибкий, чем циклы for в других языках программирования, например, в Бейсике. Любой из трех или все три элемента заголовка могут быть опущены, хотя точки с запятой обязательны. Также операторы для инициализации, условия и приращения цикла могут быть любым допустимым в Си операторами с независимыми переменными, и использовать любой тип данных Си, включая данные с плавающей точкой (floats). Эти необычные для цикла for типы операторов позволяют обеспечить программное решение некоторых нестандартных проблем. Например, использование умножения в операторе счетчика цикла позволяет создавать логарифмическую прогрессию: for(int x = 2; x < 100; x = x * 1. 5){ println(x); } Генерируется: 2, 3, 4, 6, 9, 13, 19, 28, 42, 63, 94
Другой пример, плавное уменьшение или увеличение уровня сигнала на светодиод с помощью одного цикла for:
void loop() { int x = 1; for (int i = 0; i > -1; i = i + x){ analogWrite(PWMpin, i); if (i == 255) x = -1; // переключение управления на максимуме delay(10); } } Список использованных источников
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|