массив и выполнение условий
- Войдите на сайт для отправки комментариев
Добрый день, никак не получается реализовать такую функцию
получаю данные с датчика. записываю в пемеменные a и b. Нужно создать условие что когда a>50 но а<160 и b>330 но b<65 то....
написал такую функцию
if (s>50 && s<160 && b>330 && b<65) и не работает никак и стало понятно почему тк это конфликт условий по b. если оставить только if (a>50 && a<160 && b>330) то все ок те нет второго условия по b
Думаю что в целом это не самый лучший вариант, куда изящее было бы реализовать используя некий массив. данные у меня что по a что b идут от 0 до 350. Может тогда как то из массива оценивать, что при значении a от 50 до 160 и одновременно при значении b от 0 до 65 и b от 330 до 350 то {...}
Спасибо буду очень благодарен помощи. Всем хорошего дня!
if (s>50 && s<160 && b>330 && b<65)
Это было в феврале —
Первого апреля,
Сухо было на дворе —
Грязи по колено!
По железному мосту
Сделанном из досок,
Шёл высокий человек
Маленького роста.
https://www.inpearls.ru/41850
ПС:: if (s>50 && s<160 && (b>330 || b<65))
ну так я же указал что это абсурдное условие )) там получается выполение условия по b если попадает в значение от 330 до 350 либо от 0 до 65
получаю данные с датчика. записываю в пемеменные a и b. Нужно создать условие что когда a>50 но а<160 и b>330 но b<65 то....
Никакое число не бывает > 330, но < 65.
Может тогда как то ....
А может сесть и просто словами сформулировать разумное, непротиворечивое условие? А потом уже программу писать?
Смотрите
для обеих переменных я получаю значения от 0 до 350
условие выполняется когда
значение а попадает в отрезок от 50 до 160
и одновременно
значение b попадает в промежуток от 300 до 350 либо от 0 до 65
Напишите ваше условие в строчку русскими словами с использованием "и", "или"...
условие выполняется когда
значение а попадает в отрезок от 50 до 160
и одновременно
значение b попадает в промежуток от 300 до 350 либо от 0 до 65
Ну, так и пишите. А Вы чего написали-то? Пишите так, как словами написано.
вариант от qwone в отлично, но можно ли на будущее как то удобнее формироват такие уловия в коде.
sadman41
если a >50 но <160 и b>330 либо b>0 но <60 то... {}
по b такое хитрое условие тк это отрезок окружности усеченной.
Не надо "но", "либо". Поверьте - выражение простое и, если не будете фантазировать, напишете за две минуты. Только во вторую часть скобок надо больше. Группируйте... должно быть три группы условий.
Смотрите
для обеих переменных я получаю значения от 0 до 350
условие выполняется когда
значение а попадает в отрезок от 50 до 160
и одновременно
значение b попадает в промежуток от 300 до 350 либо от 0 до 65
Может так?
ЕСЛИ (a>=50 И а<=160) И ((b>=300 И b<=350) ИЛИ (b>0 И b<=65)) ТО {}
done! всем спасибо за то что откликнулись все работает как надо. Хорошего дня тему можно закрывать)