Надо собрать калькулятор: несколько вкладок из TabControl а в каждой вкладке ComboBoxы со своими значениями. Еще не разобрался с компонентами (недавно установил программу) пока все работает, но не могу в одном ComboBoxе сделать обработку ошибок от неправильного выбора значений (больше 10 лет и 0 мес) т. к. некоторые значения пересекаются (6.4
6.5;6.6;6.7;6.8). Максимальное значение должно быть 6.85. Как это можно организовать? Вчера целый вечер пробовал - не получается. И не могу найти как округлить число в большую сторону, например: 6.3545783 в 6.36
code_17724.txt
Этот топик читают: Гость
|
Ответов: 2
Рейтинг: 0
|
|||
| карма: 0 |
| ||
| файлы: 1 | code_17724.txt [6.3KB] [117] |
|
Ответов: 4641
Рейтинг: 334
|
|||
|
то что в мультиэлементе, заменяется на один StrList
pofigist писал(а): округлить числопо округлению... используй round в Math или MathParse ну и примеры смотрим. Если округление именно в пользу продавца.... то думаю nesco подскажет мат выражение (если захочет конечно) pofigist писал(а): больше 10 лет и 0 меспри выборе цифры 10 т.е индекса 10 делай doEnable=False (т.е подать на точку, значение 0) на ComboBoxе с месецами. и читаем справку. смотрим примеры. итд итп. пр. |
|||
| карма: 1 |
|
|
Ответов: 2
Рейтинг: 0
|
|||
|
Спасибо за совет, наверное так правильно?
code_17729.txt Но с MathParse round все равно не разберусь с сотыми от числа |
|||
| карма: 0 |
| ||
| файлы: 1 | code_17729.txt [2KB] [118] |
|
Ответов: 4641
Рейтинг: 334
|
|||
строку по индексу, можно еще искать подавая на doGetString индекс строки в потоки. про в потоки читаем Основы |
|||
| карма: 1 |
|
|
Ответов: 3851
Рейтинг: 159
|
|||
|
[flood] Ravilr писал(а): Если округление именно в пользу продавца.... то думаю nesco подскажет мат выражение (если захочет конечно)Если округление именно в пользу продавца, то тут любой подскажет мат выражение (скорее всего захочет) |
|||
| карма: 0 |
|
|
Ответов: 6
Рейтинг: 1
|
|||
|
Доброе время суток начал изучение программы.
Созрел вопрос: как релизуются сложные математические формулы? например первое что в голову пришло я правильно понимаю что это выражение следует писать в ручную в исходнике? |
|||
| карма: 0 |
|
|
Ответов: 3851
Рейтинг: 159
|
|||
|
dej, посмотри MathParse в разделе логика .. |
|||
| карма: 0 |
| ||
| Голосовали: | dej |
|
Ответов: 6
Рейтинг: 1
|
|||
|
Andrey, спасибо
|
|||
| карма: 0 |
| ||
| Голосовали: | Drelariel |
|
Ответов: 3
Рейтинг: 5
|
|||
|
Огромное спасибо !
|
|||
| карма: 0 |
|
|
Ответов: 6
Рейтинг: 1
|
|||
|
не получается решить вот такую задачу:
существ. 3 поля edit, MathParse и кнопка. edit1 и edit2 -ввод численных данных.(начальное значение =0 ) edit3 -вывод результата MathParse - содержит в себе простенькую формулу: 2 + %1 + %2 проблема в том что при нажитии кнопки выводится результат 2 что не есть хорошо, как мне сделать проверку если в edit1 и edit2 имеет значение 0 чтоб и результат был 0 |
|||
| карма: 0 |
|
|
Разработчик
Ответов: 26358
Рейтинг: 2151
|
|||
|
Напиши вот такую формулу -- (2 + %1 + %2) * abs(sign(%1 + %2))
|
|||
| карма: 23 |
| ||
| Голосовали: | dej, Drelariel |
|
Ответов: 6
Рейтинг: 1
|
|||
|
помогло, вот бы только расшифровку получить))ведь формула может быть посложнее,хочется понять
|
|||
| карма: 0 |
|
|
Ответов: 970
Рейтинг: 270
|
|||
|
Выдели mathparse и нажми F1
|
|||
| карма: 0 |
| ||
| Голосовали: | dej |
|
Разработчик
Ответов: 26358
Рейтинг: 2151
|
|||
|
А че там понимать, все функции описаны в справке по F1 соответствующего компонента
abs(x) -- абсолютная величина числа sign(x) -- знак числа, принимает соответственно значения -1,0,+1. Те, при отрицаетльном значении -- -1 (для чего и нужен abs), при 0 -- 0, а при положительном -- +1. Соответственно, формула дает +1 при всех значениях отличных от 0 |
|||
| карма: 23 |
| ||
| Голосовали: | dej |
|
Ответов: 6
Рейтинг: 1
|
|||
|
методом ТЫКА)) получилось еще интересней (2 + %1 + %2) * abs(sign(%1 * %2)) при умножении проверяются сразу оба поля, надеюсь ошибок из за этого не появится))
спасибо за помощь!! |
|||
| карма: 0 |
|



Поиск
Друзья
Администрация