Добавить в переменную условия сравнения



  • Возможно ли установить в переменную условие сравнения (больше или меньше), что бы сравнивать другие переменные? Например: If [[значение1]] [[ > или < ]] [[значение2]]



  • @virkator Можно по-разному. Например:

    [[CMP]] = 'GT';
    ...
    if ([[CMP]] == 'GT' && [[VAR]] > [[VAL]]) || ([[CMP]] == 'LT' && [[VAR]] < [[VAL]])
      doSmth();
    


  • @virkator Можно так:

    [[FACTOR]] = -1;        // или [[FACTOR]] = 1;
    ...
    if ([[FACTOR]]*[[VAR]] > [[FACTOR]]*[[VAL]])          // ">", если [[FACTOR]] == 1; "<", если [[FACTOR]] == -1;
      doSmth();
    

    В общем, вариантов еще много.



  • @virkator Это если я правильно вас понял, конечно.



  • @daemons, не, он спрашивает, можно ли в переменную положить значок >.
    @virkator, ну так ты его положи и заодно нам расскажешь, можно ли)



  • @Antonio аа, млин, я туплю ))))



  • @virkator Вот это [[ > или < ]]
    соответствует значению
    !=
    т.е. всё, что не равно числу, а значит больше или меньше ))



  • @Xstroy, я так понял, что задача - в зависимости от условий проверять именно больше или меньше одно значение, чем другое. Хотя сейчас перечитываю и думаю, что возможно как раз ты правильно понял).



  • @Antonio said in Добавить в переменную условия сравнения:

    @Xstroy, я так понял, что задача - в зависимости от условий проверять именно больше или меньше одно значение, чем другое.

    Как научится правильно спрашивать программистов?)) Всё время как в анекдоте получается - "купи булку хлеба, узнай есть ли яйца, если есть купи 10", купил 11 булок хлеба. Никаких [[>или<]] мне не надо, там должно быть [[больше]] либо [[меньше]], как такую переменную создать? Только, пожалуйста, куда нажимать в BAS укажите, а то эти эти кабалистические символы на чёрном фоне меня пугают. И да, с праздником, мужики!



  • как присвоить переменной оператор? как присвоить переменной оператор присваивания?
    сущности несколько разные, а вариант с ифами самый очевидный, предствавь что > это 'GT', а < то 'LT' же



  • @ruzne said in Добавить в переменную условия сравнения:

    как присвоить переменной оператор? как присвоить переменной оператор присваивания?

    По-идее если бы можно было в выражение как-то перегонять содержимое переменной в виде строки, то получилось бы.

    @virkator, да уж, анекдот в тему) С праздником!)
    В общем прикладываю пример, как сделать разветвление действий в зависимости от того, какой знак (> или <)
    будет в переменной.

    Скачать пример



  • @Antonio Хорошо, строку с выражение можно присваивать переменной, выполять eval(или строка с условием или переменная со строкой с условием)
    Я был про то что < это операторы чего сравнения наверное, переменные это операнды и операнды не все одинково переменные



  • Парни, спасибо за участие.
    А можно еще попроще мне объяснить, я больше под паяльник заточен, но очень надо одну поделку состряпать. Обнаружил в примере ("\u003e") и ("\u003c") - что это такое и откуда берётся, на что влияет. За одно и что такое 'GT', а так же 'LT', хотелось бы узнать.

    @ruzne said in Добавить в переменную условия сравнения:

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

    Наверное так сразу надо было спросить, а не лезть к людям с кривыми примерами.



  • @virkator насколько я знаю присвоить переменной оператор нельзя, на самом деле есть языки где разница между оператором и операндом нет.. но да пусть, наверное есть
    установи переменную в зависимости пиши в нее больше или меньше
    if(переменная == 'больше'){ IS = сравнимое1 > сравнимое2;}
    if(переменная == 'меьше'){ IS = сравнимое1 < сравнимое2;}
    в IS будет результат сравнения тру или не тру
    проще не смогу

    рас уж, я кормушку собачеке делаю из канализационного обратного клапана и електропривода центрального замка. мне понадобилось реле задержки выключения нагрузки без микроконтроллера только. я вроде собрал, на npn, но чет не могу задержку отрегулировать и у меня ключ греется как очень нехороший.

    а это символы юникода, да?



  • @virkator said in Добавить в переменную условия сравнения:

    Обнаружил в примере ("\u003e") и ("\u003c") - что это такое и откуда берётся, на что влияет.

    Это знаки > <. Открой экшен if, где они встречаются и там в строку кликни - появиться варианты, в том числе "создать выражение". Там конструктор. Думаю, поймешь что к чему.



  • @virkator said in Добавить в переменную условия сравнения:

    под паяльник заточен

    Ну, паяльник или не паяльник, да и понятно, что мы все люди занятые, но тут придется подтратить время, чтоб изучить предмет. Особенно с таким инструментом как BAS.

    Зато спасибо, что породили повод для здорового программисткого юмора. Отвлекаться от среьезного тоже надо иногда :))



  • @Antonio said in Добавить в переменную условия сравнения:

    @daemons, не, он спрашивает, можно ли в переменную положить значок >.
    @virkator, ну так ты его положи и заодно нам расскажешь, можно ли)

    Рассказываю. Положил я "\u003e" в переменную и попытался эту переменную вставить между значениями в If... тут должна быть картинка, на которой капитан Кирк из Стартрека хлопает себя по лбу. Теперь понимаю, на сколько ламерский вопрос задал.
    Присмотрелся к "чёрным" примерам: умножить значения на "-1", что бы большее значение стало меньшим - это же просто гениально! Кажется я заработал Level Up. Тему можно закрывать, ещё раз всем спасибо!

    @ruzne said in Добавить в переменную условия сравнения:

    я кормушку собачеке делаю

    Пиши на почту, может чего подскажу.



  • @virkator Хехе, добро пожаловать в клуб программистов, бро ))


Log in to reply
 

Looks like your connection to Bablosoft was lost, please wait while we try to reconnect.