Вверх ↑
Этот топик читают: Гость
Ответов: 94
Рейтинг: -1
#1: 2009-09-22 23:29:40 ЛС | профиль | цитата
Что надо написать в маске что бы все числа сравнивались и если они равны светодиод включался?
карма: 1

0
Ответов: 199
Рейтинг: 44
#2: 2009-09-23 01:51:59 ЛС | профиль | цитата
какие все? может так.

code_15015.txt
карма: 0

0
файлы: 1code_15015.txt [515B] [91]
Ответов: 94
Рейтинг: -1
#3: 2009-09-23 10:24:56 ЛС | профиль | цитата
Нененее, это if else обычный, а мне надо с if else multi, что бы более двух чисел сравнивались и если все они равны включался светодиод
карма: 1

0
Ответов: 16884
Рейтинг: 1239
#4: 2009-09-23 10:32:29 ЛС | профиль | цитата
DarkHUNTER,
Во первых: есть тема If_else_multi. Зачем родить новую? Непонятно...
Во вторых: с кодами компонента идут ДВА! примера.
В третьих: там можно обратиться к Автору компонента.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26163
Рейтинг: 2127
#5: 2009-09-23 11:04:50 ЛС | профиль | цитата
DarkHUNTER писал(а):
что бы более двух чисел сравнивались и если все они равны включался светодиод

Во, блини, а я и не знал, что с этим MathParse не справится, или, все же, справится
карма: 22

0
Ответов: 94
Рейтинг: -1
#6: 2009-09-23 11:24:03 ЛС | профиль | цитата
Я не умею с MathParse работать, пример плизз
карма: 1

0
Гость
Ответов: 17029
Рейтинг: 0
#7: 2009-09-23 12:40:08 правка | ЛС | профиль | цитата


Редактировалось 1 раз(а), последний 2017-03-04 06:05:31
карма: 0

0
Гость
Ответов: 17029
Рейтинг: 0
#8: 2009-09-23 12:46:36 правка | ЛС | профиль | цитата


Редактировалось 1 раз(а), последний 2017-03-04 06:05:31
карма: 0

0
Разработчик
Ответов: 26163
Рейтинг: 2127
#9: 2009-09-23 13:17:31 ЛС | профиль | цитата
Млин, даже отвлечься нельзя. Вот пример



Add(MainForm,2953706,133,252)
{
Width=357
Height=78
link(onCreate,8283391:doWork2,[])
}
Add(MathParse,10700093,224,266)
{
DataCount=5
MathStr="(%1 = %2) * (%3 = %4) * %5"
ResultType=0
link(onResult,4891760:doCase,[])
link(X1,5179588:Text,[(230,244)(160,244)])
link(X2,11787435:Text,[(237,238)(202,238)])
link(X3,2728156:Text,[])
link(X4,5235813:Text,[(251,250)(286,250)])
link(X5,15904502:Text,[(258,258)(328,258)])
}
Add(Edit,5179588,154,154)
{
Left=15
Top=10
Text="128"
DataType=2
link(onChange,1295365:doWork1,[(451,160)])
}
Add(Edit,11787435,196,168)
{
Left=70
Top=10
Text="128"
DataType=2
link(onChange,1295365:doWork2,[])
}
Add(Edit,2728156,238,182)
{
Left=125
Top=10
Text="128"
DataType=2
link(onChange,7734215:doWork2,[])
}
Add(Edit,5235813,280,196)
{
Left=180
Top=10
Text="128"
DataType=2
link(onChange,12241350:doWork2,[])
}
Add(Edit,15904502,322,210)
{
Left=235
Top=10
Text="128"
DataType=2
link(onChange,2694084:doWork2,[])
}
Add(LED,495682,378,252)
{
Left=305
Top=10
}
Add(HubEx,8283391,196,266)
{
link(onEvent,10700093:doCalc,[])
}
Add(HubEx,1295365,447,168)
{
Angle=1
link(onEvent,7734215:doWork1,[])
}
Add(HubEx,7734215,447,182)
{
Angle=1
link(onEvent,12241350:doWork1,[])
}
Add(HubEx,12241350,447,196)
{
Angle=1
link(onEvent,2694084:doWork1,[])
}
Add(HubEx,2694084,447,210)
{
Angle=1
link(onEvent,8283391:doWork3,[(451,310)(200,310)])
}
Add(Case,4891760,322,266)
{
Value=Integer(0)
link(onNextCase,495682:doOn,[])
link(onTrue,495682:doOff,[(366,279)(366,265)])
}

карма: 22

1
Голосовали:DarkHUNTER
Ответов: 1328
Рейтинг: 69
#10: 2009-09-25 13:08:29 ЛС | профиль | цитата
nesco, получается светодиод горит, если x1=x2 и x3=x4, даже если х1<>x3 a x5 может быть с любым значением. Например х1=129 х2=129 х3=128 х4=128 х5=127 светодиод горит.
карма: 2

0
Разработчик
Ответов: 26163
Рейтинг: 2127
#11: 2009-09-25 13:14:37 ЛС | профиль | цитата
Konst, ну пропиши все взаимодействия, проблема-то в чем
------------ Дoбавленo в 13.18:
Как-то вот так



Add(MainForm,2894639,147,224)
{
Width=357
Height=78
link(onCreate,8283391:doWork2,[])
}
Add(MathParse,10700093,238,238)
{
DataCount=5
MathStr="(%1 = %2) * (%1 = %3) * (%1 = %4) * (%1 = %5) * (%2 = %3) * (%2 = %4) * (%2 = %5) * (%3 = %4) * (%3 = %5) * (%4 = %5)"
ResultType=0
link(onResult,4891760:doCase,[])
link(X1,5179588:Text,[(244,216)(174,216)])
link(X2,11787435:Text,[(251,210)(216,210)])
link(X3,2728156:Text,[])
link(X4,5235813:Text,[(265,222)(300,222)])
link(X5,15904502:Text,[(272,230)(342,230)])
}
Add(Edit,5179588,168,126)
{
Left=15
Top=10
Text="128"
DataType=2
link(onChange,1295365:doWork1,[(465,132)])
}
Add(Edit,11787435,210,140)
{
Left=70
Top=10
Text="128"
DataType=2
link(onChange,1295365:doWork2,[])
}
Add(Edit,2728156,252,154)
{
Left=125
Top=10
Text="128"
DataType=2
link(onChange,7734215:doWork2,[])
}
Add(Edit,5235813,294,168)
{
Left=180
Top=10
Text="128"
DataType=2
link(onChange,12241350:doWork2,[])
}
Add(Edit,15904502,336,182)
{
Left=235
Top=10
Text="128"
DataType=2
link(onChange,2694084:doWork2,[])
}
Add(LED,495682,392,224)
{
Left=305
Top=10
}
Add(HubEx,8283391,210,238)
{
link(onEvent,10700093:doCalc,[])
}
Add(HubEx,1295365,461,140)
{
Angle=1
link(onEvent,7734215:doWork1,[])
}
Add(HubEx,7734215,461,154)
{
Angle=1
link(onEvent,12241350:doWork1,[])
}
Add(HubEx,12241350,461,168)
{
Angle=1
link(onEvent,2694084:doWork1,[])
}
Add(HubEx,2694084,461,182)
{
Angle=1
link(onEvent,8283391:doWork3,[(465,282)(214,282)])
}
Add(Case,4891760,336,238)
{
Value=Integer(0)
link(onNextCase,495682:doOn,[])
link(onTrue,495682:doOff,[(380,251)(380,237)])
}

карма: 22

1
Голосовали:Konst
Разработчик
Ответов: 4698
Рейтинг: 426
#12: 2009-09-28 13:53:03 ЛС | профиль | цитата
вот если надо, пример с If_Else_Multi
code_15052.txt


nesco, а ведь if_else_muti оказался быстрее в 1.5 раза чем MathParse
code_15053.txt - проверка быстродействия
карма: 10
0
файлы: 2code_15052.txt [1.5KB] [164], code_15053.txt [1.5KB] [121]
Разработчик
Ответов: 26163
Рейтинг: 2127
#13: 2009-09-28 14:07:23 ЛС | профиль | цитата
Assasin писал(а):
ведь if_else_muti оказался быстрее в 1.5 раза

У меня, положим, всего в 1.3 раза
------------ Дoбавленo в 14.13:
А применив вот такую формулу %1 = ((%1 + %2 + %3 + %4 + %5) div 5), то быстродействие и не сильно выше
карма: 22

0
13
Сообщение
...
Прикрепленные файлы
(файлы не залиты)