Вверх ↑
Этот топик читают: Гость
Ответов: 1397
Рейтинг: 50
#1: 2007-11-19 11:04:49 ЛС | профиль | цитата
Конвертер температур. Служит для перевода температур. Версия почти 1.0
code_7715.txt
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
файлы: 1code_7715.txt [4.6KB] [329]
Ответов: 16884
Рейтинг: 1239
#2: 2007-11-20 17:51:23 ЛС | профиль | цитата
или так: (Валерий, формулы Ваши)
Смотри код ниже.

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 1397
Рейтинг: 50
#3: 2007-11-20 20:03:06 ЛС | профиль | цитата
Tad, Небольшая шероховатость в программе. Если ввести дробное число не с точкой, а с запятой - результаты различаются при одинаковых значениях. Но это так считает MathParse, наверное?
------------ Дoбавленo:

Может Galkov пояснит.
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 8908
Рейтинг: 823
#4: 2007-11-20 21:14:04 ЛС | профиль | цитата
Валерий, это программист не предусмотрел действий пользователя
карма: 19

0
Ответов: 16884
Рейтинг: 1239
#5: 2007-11-21 00:15:19 ЛС | профиль | цитата
Леонид, Валерий,

Add(MainForm,5025384,21,105)
{
Left=20
Top=105
Width=235
Height=220
Caption="Температура"
BorderStyle=1
Position=1
link(onCreate,8963747:doWork1,[])
}
Add(ChildGroupBox,8963747,84,140)
{
}
BEGIN_SDK
Add(EditMulti,14480746,3,3)
{
WorkCount=1
Width=468
Height=232
link(doWork1,9811548:doEvent2,[(13,9)(13,48)])
}
Add(GroupBox,12761631,35,91)
{
Left=5
Top=5
Width=217
Height=170
Font=[Arial,8,1,8388608,204]
Caption="Соответствие температур."
Point(doVisible)
Point(doBringToFront)
}
Add(Edit,4391812,406,28)
{
Left=10
Top=20
Width=130
Color=15793151
Font=[Arial,10,1,16711680,204]
Text="0"
Alignment=1
DataType=4
Point(onSetFocus)
link(onChange,9811548:doEvent1,[(461,34)(461,11)(29,11)(29,41)])
}
Add(Edit,12903812,175,28)
{
Left=10
Top=50
Width=130
Color=15793151
Font=[Arial,10,1,16711680,204]
Text="0"
Alignment=1
DataType=4
Point(onSetFocus)
PColor(onChange,65280)
link(onChange,2232826:doEvent1,[])
link(onSetFocus,3043296:doWork1,[(263,48)(263,174)])
}
Add(Edit,10594047,175,77)
{
Left=10
Top=80
Width=130
Color=15793151
Font=[Arial,10,1,16711680,204]
Text="0"
Alignment=1
DataType=4
Point(onSetFocus)
PColor(onChange,65280)
link(onChange,2232826:doEvent2,[(222,83)(222,41)])
link(onSetFocus,3043296:doWork2,[(256,97)(256,181)])
}
Add(Edit,13620359,175,126)
{
Left=10
Top=110
Width=130
Color=15793151
Font=[Arial,10,1,16711680,204]
Text="0"
Alignment=1
DataType=4
Point(onSetFocus)
PColor(onChange,65280)
link(onChange,2232826:doEvent3,[(233,132)(233,48)])
link(onSetFocus,3043296:doWork3,[(250,146)(250,188)])
}
Add(Edit,14239459,175,175)
{
Left=10
Top=140
Width=130
Color=15793151
Font=[Arial,10,1,16711680,204]
Text="0"
Alignment=1
DataType=4
Point(onSetFocus)
PColor(onChange,65280)
link(onChange,2232826:doEvent4,[(240,181)(240,55)])
link(onSetFocus,3043296:doWork4,[])
}
Add(Label,8382200,14,126)
{
Left=145
Top=110
Width=62
Height=17
Font=[Arial,11,1,16711680,204]
Caption="Ранкина"
}
Add(Label,4078230,21,140)
{
Left=145
Top=20
Width=15
Height=17
Font=[Arial,11,1,16711680,204]
Caption="°C"
}
Add(Label,8238522,28,154)
{
Left=145
Top=50
Width=14
Height=17
Font=[Arial,11,1,16711680,204]
Caption="°F"
}
Add(Label,5084897,35,168)
{
Left=145
Top=80
Width=11
Height=17
Font=[Arial,11,1,16711680,204]
Caption="K"
}
Add(Label,1039478,42,182)
{
Left=145
Top=140
Width=16
Height=17
Font=[Arial,11,1,16711680,204]
Caption="°R"
}
Add(Hub,9811548,35,35)
{
InCount=2
OutCount=4
link(onEvent1,11107440:doCalc,[])
link(onEvent2,360481:doOperation,[(99,48)(99,90)])
link(onEvent3,13764243:doCalc,[(93,55)(93,139)])
link(onEvent4,10246990:doOperation,[(86,62)(86,188)])
}
Add(MathParse,11107440,119,35)
{
MathStr="(9 / 5) * %1 + 32"
link(onResult,12903812:doText2,[])
}
Add(Math,360481,119,84)
{
Op1=273.16
link(onResult,10594047:doText2,[])
}
Add(MathParse,13764243,119,133)
{
MathStr="(9 / 5) * %1 + 32 + 459.7"
link(onResult,13620359:doText2,[])
}
Add(Math,10246990,119,182)
{
OpType=3
Op2=1.25
link(onResult,14239459:doText2,[])
}
Add(ChanelToIndex,3043296,287,168)
{
Count=4
link(onIndex,7486980:doRead,[])
}
Add(StrList,13537341,322,112)
{
Strings=#19:(5 / 9) * (%1 - 32)|11:%1 - 273.16|27:(5 / 9) * (%1 - 459.7 - 32)|9:%1 * 1.25|
}
Add(ArrayRW,7486980,336,168)
{
link(onRead,16384370:doMathStr,[(382,174)(382,82)(338,82)(338,41)])
link(Array,13537341:Array,[])
}
Add(MathParse,16384370,350,28)
{
MathStr=""
Point(doMathStr)
link(onResult,4391812:doText,[])
}
Add(Hub,2232826,280,28)
{
InCount=4
OutCount=1
link(onEvent1,16384370:doCalc,[])
}
END_SDK

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 5446
Рейтинг: 323
#6: 2007-11-21 10:52:30 ЛС | профиль | цитата
Валерий писал(а):

Если ввести дробное число не с точкой, а с запятой - результаты различаются при одинаковых значениях.

Это не бага, это фича (с)
карма: 1

0
Ответов: 9906
Рейтинг: 351
#7: 2007-11-21 19:32:13 ЛС | профиль | цитата
Странный стиль программирования, мягко говоря...
------------ Дoбавленo:

Внимание: смертельный номер
------------ Дoбавленo:


#sha
Add(MainForm,5025384,126,119)
{
Left=20
Top=105
Width=235
Height=220
Caption="Температура"
BorderStyle=1
Position=1
link(onCreate,8963747:doWork1,[])
}
Add(ChildGroupBox,8963747,189,154)
{
}
BEGIN_SDK
Add(EditMulti,14480746,3,3)
{
WorkCount=1
Width=468
Height=232
link(doWork1,9811548:doEvent2,[(13,9)(13,48)])
}
Add(GroupBox,12761631,35,91)
{
Left=5
Top=5
Width=217
Height=170
Font=[Arial,8,1,8388608,204]
Caption="Соответствие температур."
Point(doVisible)
Point(doBringToFront)
}
Add(Edit,4391812,308,28)
{
Left=10
Top=20
Width=130
Color=15793151
Font=[Arial,10,1,16711680,204]
Text="0"
Alignment=1
DataType=4
Point(onSetFocus)
link(onChange,9811548:doEvent1,[(353,34)(353,11)(29,11)(29,41)])
}
Add(Edit,12903812,175,28)
{
Left=10
Top=50
Width=130
Color=15793151
Font=[Arial,10,1,16711680,204]
Text="0"
Alignment=1
DataType=4
Point(onSetFocus)
PColor(onChange,65280)
link(onChange,3779009:doCalc,[])
}
Add(Edit,10594047,175,77)
{
Left=10
Top=80
Width=130
Color=15793151
Font=[Arial,10,1,16711680,204]
Text="0"
Alignment=1
DataType=4
Point(onSetFocus)
PColor(onChange,65280)
link(onChange,9868087:doOperation,[])
}
Add(Edit,13620359,175,126)
{
Left=10
Top=110
Width=130
Color=15793151
Font=[Arial,10,1,16711680,204]
Text="0"
Alignment=1
DataType=4
Point(onSetFocus)
PColor(onChange,65280)
link(onChange,15828604:doCalc,[])
}
Add(Edit,14239459,175,175)
{
Left=10
Top=140
Width=130
Color=15793151
Font=[Arial,10,1,16711680,204]
Text="0"
Alignment=1
DataType=4
Point(onSetFocus)
PColor(onChange,65280)
link(onChange,15349722:doOperation,[])
}
Add(Label,8382200,14,126)
{
Left=145
Top=110
Width=62
Height=17
Font=[Arial,11,1,16711680,204]
Caption="Ранкина"
}
Add(Label,4078230,21,140)
{
Left=145
Top=20
Width=15
Height=17
Font=[Arial,11,1,16711680,204]
Caption="°C"
}
Add(Label,8238522,28,154)
{
Left=145
Top=50
Width=14
Height=17
Font=[Arial,11,1,16711680,204]
Caption="°F"
}
Add(Label,5084897,35,168)
{
Left=145
Top=80
Width=11
Height=17
Font=[Arial,11,1,16711680,204]
Caption="K"
}
Add(Label,1039478,42,182)
{
Left=145
Top=140
Width=16
Height=17
Font=[Arial,11,1,16711680,204]
Caption="°R"
}
Add(Hub,9811548,35,35)
{
InCount=2
OutCount=4
link(onEvent1,11107440:doCalc,[])
link(onEvent2,360481:doOperation,[(99,48)(99,90)])
link(onEvent3,13764243:doCalc,[(93,55)(93,139)])
link(onEvent4,10246990:doOperation,[(86,62)(86,188)])
}
Add(MathParse,11107440,119,35)
{
MathStr="(9 / 5) * %1 + 32"
link(onResult,12903812:doText2,[])
}
Add(Math,360481,119,84)
{
Op2=273.16
link(onResult,10594047:doText2,[])
}
Add(MathParse,13764243,119,133)
{
MathStr="(9 / 5) * %1 + 32 + 459.7"
link(onResult,13620359:doText2,[])
}
Add(Math,10246990,119,182)
{
OpType=3
Op2=1.25
link(onResult,14239459:doText2,[])
}
Add(HubEx,15441467,280,119)
{
Angle=3
link(onEvent,3725055:doWork3,[])
}
Add(MathParse,3779009,231,28)
{
MathStr="(5 / 9) * (%1 - 32)"
link(onResult,11257121:doWork2,[])
}
Add(Math,9868087,231,77)
{
OpType=1
Op2=273.16
link(onResult,3725055:doWork2,[])
}
Add(MathParse,15828604,231,126)
{
MathStr="(5 / 9) * (%1 - 459.7 - 32)"
Point(doMathStr)
link(onResult,15441467:doWork2,[])
}
Add(Math,15349722,231,175)
{
OpType=2
Op2=1.25
link(onResult,15441467:doWork3,[(284,181)])
}
Add(HubEx,11257121,280,21)
{
link(onEvent,4391812:doText,[])
}
Add(HubEx,3725055,280,70)
{
Angle=3
link(onEvent,11257121:doWork3,[])
}
END_SDK
------------ Дoбавленo:

Хм... пронесло вроде
карма: 9

0
Ответов: 1397
Рейтинг: 50
#8: 2007-11-21 19:47:25 ЛС | профиль | цитата
Да, читаемей схема наверное должна выглядеть так. Но все же не пойму одного, почему если в формулу ввести дробное число с запятой, то MathParse ругается, а если подать на вход MathParse дробное число с запятой он его проглатывает, но вычисление производит неправильно. Способы обхода этого я знаю, но все таки в чем дело?
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 9906
Рейтинг: 351
#9: 2007-11-21 19:50:35 ЛС | профиль | цитата
Валерий писал(а):
если в формулу ввести дробное число с запятой

Кто и когда говорил, что с "запятой", это вообще - дробное число.
Может у себя на компе в языковых настройках посмотришь, что является разделителем
карма: 9

0
Ответов: 1397
Рейтинг: 50
#10: 2007-11-21 19:59:37 ЛС | профиль | цитата
Galkov писал(а):
Кто и когда говорил, что с "запятой", это вообще - дробное число

Пользователи программ.
Galkov писал(а):
Может у себя на компе в языковых настройках посмотришь, что является разделителем

Я честно говоря про этот разделитель узнал месяц назад. Когда устанавливал надстройку для ACAD.
карма: 0
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 9906
Рейтинг: 351
#11: 2007-11-21 20:31:37 ЛС | профиль | цитата
Валерий писал(а):
Пользователи программ

Автору HiAsm пользователи "твоих" программ ничего не говорили, однако.
Если они говорили это разработчику схемы, то это - и проблемы разработчика схемы.
Эти проблемы настолько велики, что достойны обсуждения на форуме


Валерий писал(а):
Я честно говоря про этот разделитель узнал месяц назад

Ну а я про запятую - пару лет назад (хотя точно и не помню), а точкой пользуюсь всю жизнь.
ВЫВОД: ничего из этого ровным счетом не следует.
По моему скромному разумению (ИМХО - по Вашему)
карма: 9

0
Администрация
Ответов: 15295
Рейтинг: 1519
#12: 2007-11-22 10:23:41 ЛС | профиль | цитата
интересно как пользователи программ такие числа передают в параметрах процедуры... В кавычки наверно заключают...
карма: 27
0
Ответов: 16884
Рейтинг: 1239
#13: 2007-11-22 10:41:01 ЛС | профиль | цитата
При таком соединении событие от мышки на onSetFocus есть, но SelectAll не происходит. От Tab работает.
code_7749.txt
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_7749.txt [1.2KB] [292]
13
Сообщение
...
Прикрепленные файлы
(файлы не залиты)