Почему ардуино не правильно умножает?
- Войдите на сайт для отправки комментариев
Пт, 20/05/2022 - 21:30
int a=60; int b=1000; long c; void setup() { Serial.begin(9600); } void loop() { c= a * b; Serial.println(c); }
Почему ардуино не правильно умножает?
В сериал порт выводится -5536, почему так?
патамушта 60000 - 65536 = -5536
Но там же long c, он должен быть -2 147 483 648...2 147 483 647
Или не так?
Даже если просто писать, все равно выходит неверно
потому что нужно читать правила приведения типов
c= 60 * 1000L; // >> L <<
Патамучто Вы не читаете, а ютюб смотрите.
Спасибо большое=)
Спасибо большое=)
мы поверили в тебя )))
А микропроцесор исправный, вообще способен производить не правильные математические операции?
Нет. Вообще, что процессор, что микропроцессор - железяки абсолютно тупые и никогда не делают то, что вы от них хотите. Они делают исключительно и ТОЛЬКО то, что вы им задали сделать. Т.е. в любых проблемах ищите только свои ошибки )))
Спасибо большое=)
мы поверили в тебя )))
Ай шаман! Ну прям шаман не иначе! )))
А то! Поройтесь по темам, много найдёте! Даже компилировать неправильно могут. Особенно, если китайские :-)
Она с...а и складывает не верно !
Она с...а и складывает не верно !
Кетай :-(
Вот на амперке разбирали, что стоит взять оригинальную, так сразу работает что, что на кетае даже не компилировалось :-(
Вот на амперке разбирали, что стоит взять оригинальную, так сразу работает, что на кетае даже не компилировалось :-(
поэтому контроллер для дрона (APM2.6, APM2.8) на оригинальной меге?