a=a>=(240+1) ? 240 : a; //как это понять?
- Войдите на сайт для отправки комментариев
Ср, 01/06/2016 - 19:33
unsigned long a = analogRead(PINI_NPUT_A1); // то есть от 0 до 255
a = a >= (240+1) ? 240 : a; //как это понять?
Кто-нибудь может направить на путь истинный что будет в результате?
если 0 ?
если 255 ?
Что-то мне подсказывает, что это ограничение максимального значения 255? Или что-то не то?
другими словами if (a>=241) a=240;
art100, если "а" больше или равно 241, то а=240, иначе значение "а" не меняется. Тоже можно написать более понятно:
if (a>240) {a=240;}
Кто-нибудь может направить на путь истинный что будет в результате?
Самый истинный путь -> http://people.toiit.sgu.ru/Sinelnikov/PT/C/Kern_Ritch.pdf
Всё остальное - компромиссы.
art100, если "а" больше или равно 241, то а=240, иначе значение "а" не меняется. Тоже можно написать более понятно:
if (a>240) {a=240;}
я бы добавил
if (a>240) {a=240;}
else a=a;
else a=a;
Глубокомысленно!
Теперь бы ещё объявить конкурс среди новичков: придумайте ситуацию в которой такая операция имеет смысл.
Профи - не лезьте с подсказками! Пусть думают :)
Спасибо всем. Я так и подумал код писан не руками, а другим местом.
Чистил чистил 6 часов. все равно идиотизмом попахивает.
Просто получить аналоговое значение на ножке.
//-------------------------------------------------------------- inline unsigned long ADCRead1(byte pinadc){ unsigned long a = analogRead(pinadc); a = a >=(LCD_OS_Y_VOLT+1) ? LCD_OS_Y_VOLT : a; //a=a>=241 ? 240 : a; return a; } //dimax предлагает if (a>240) {a=240;} исправить Вроде прямо из учебника
Спасибо всем. Переписал по встроенному хелпу и заработала
Пойду посплю что-ли.