Arduino арифметика

February 1, 2012 by admin Комментировать »

Арифметические операции включают сложение, вычитание, умножение и деление. Они  возвращают  сумму,  разность,  произведение  или  частное  (соответственно) двух операндов.

y = y + 3; x = x – 7; i = j * 6;

r = r / 5;

Операция  управляется  используемым  типом  данных  операндов,  так  что, например, 9/4 даѐт 2 вместо 2.25, поскольку 9 и 4 имеют тип int и не могут использовать десятичную точку. Это также означает, что операция может вызвать переполнение, если результат больше, чем может храниться в данном типе.

Если  используются  операнды  разного  типа,  то   для  расчѐтов  используется больший  тип.  Например,  если  одно  из чисел  (операндов)  типа  float,  а  второе целое, то для вычислений используется тип с плавающей точкой.

Выбирайте типы переменных достаточные для хранения результатов ваших вычислений. Прикиньте, в какой точке ваша переменная переполнится, а также, что случится в другом направлении, то есть, (0-1) или (0- -32768). Для вычислений, требующих дробей, используйте переменные типа float, но остерегайтесь их недостатков: большой размер и маленькая скорость вычислений.

Примечание: Используйте оператор приведения типа (нзвание типа) для округления, то есть, (int)myFloat – для преобразования переменной одного типа в другой «на лету». Например, i = (int) 3.6  – поместит в i значение 3.

смешанное присваивание

Смешанное присваивание сочетает арифметические операции с операциями присваивания.  Чаще  всего  встречается  в  цикле  for,  который  описан  ниже. Наиболее общее смешанное присваивание включает:

x ++                       // то же, что x = x + 1, или увеличение x на +1 x —                            // то же, что x = x – 1, или уменьшение x на -1 x += y            // то же, что x = x + y, или увеличение x на +y x -= y                  // то же, что x = x – y, или уменьшение x на -y x *= y  // то же, что x = x * y, или умножение x на y

x /= y                 // то же, что x = x / y, или деление x на y

Примечание: Например, x *= 3 утроит старое значение x и присвоит полученный результат x.

операторы сравнения

Сравнения одной переменной или константы с другой используются в выражении для if, чтобы проверить истинность заданного условия. В примерах на следующих страницах ?? используется для обозначения любого из следующих условий:

x == y                             // x равно y

x != y                              // x не равно y

x < y                               // x меньше, чем y x > y      // x больше, чем y

x <= y                             // x меньше, чем или равно y x >= y   // x больше, чем или равно y

логические операторы

Логические операторы, чаще всего, это способ сравнить два выражения и вернуть ИСТИНА или ЛОЖЬ, в зависимости от оператора. Есть три логических оператора: AND, OR и  NOT, часто используемые в конструкциях if:

Logical AND:

if (x > 0 && x < 5)                    // true, только если оба

// выражения true

Logical OR:

if (x > 0 || y > 0)                       // true, если любое из

// выражений true

Logical NOT:

if  (!x > 0)                                 // true, если только

// выражение false

Источник: Гололобов В. – С чего начинаются роботы. О проекте Arduino для школьников (и не только) – 2011

Оставить комментарий

микросхемы мощности Устройство импульсов питания пример приемника провода витков генератора выходе напряжение напряжения нагрузки радоэлектроника работы сигнал сигнала сигналов управления сопротивление усилитель усилителя усиления устройства схема теория транзистора транзисторов частоты