|
|
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Есть String "2+2*2". Как вычислить её значение? Спасибо за внимание. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2008, 11:14 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
самое простое - скриптовать Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2008, 11:24 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
В M$ Calculator посчитайте. Сначала в простом, потом в "научном" ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2008, 11:57 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
Неправильно расссказал о задаче. На вход будут подаваться стринговые значения аля вышеописанное. Чем можно парсить эти значения для вычисления результата. Пример. На входе: 2+2*2 На выходе: 6 На входе: 2*2*3+1 На выходе: 13 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2008, 12:40 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
KaTaJIu3aToPНеправильно расссказал о задаче. На вход будут подаваться стринговые значения аля вышеописанное. Чем можно парсить эти значения для вычисления результата. Пример. На входе: 2+2*2 На выходе: 6 На входе: 2*2*3+1 На выходе: 13 А вы поставьте Оракл и делайте запрос в базу что то типа select 2+2*3 from dual )))))))))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2008, 13:18 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
если жава шестая, то javax.script если ранняя, то либо рино прикручивать, либо изучать алгоритмы и делать самому :)) Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2008, 13:27 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
_mashuta_В M$ Calculator посчитайте. Сначала в простом, потом в "научном" ;-) +1. Известная фишка! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2008, 14:26 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
KaTaJIu3aToPНеправильно расссказал о задаче. На вход будут подаваться стринговые значения аля вышеописанное. Чем можно парсить эти значения для вычисления результата. Пример. На входе: 2+2*2 На выходе: 6 На входе: 2*2*3+1 На выходе: 13 Apache Jexl ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2008, 14:32 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
KaTaJIu3aToP, смотри в гугле "Синтаксический анализ методом рекурсивного спуска". На решение твоей проблемы часа времени хватит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2008, 22:33 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
я делал как то через little language pattern и StringTokenizer стандартный подход граф сварганить и просчитать его, тогда, в случае чего, и преобразовать можно будет формулу достаточно просто, сократить, оптимизировать или еще что-нибудь с ней сделать.. но блаблабла фром дуал, это, конечно, наш выбор )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2008, 00:16 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
KaTaJIu3aToPНеправильно расссказал о задаче. На вход будут подаваться стринговые значения аля вышеописанное. Чем можно парсить эти значения для вычисления результата. Пример. На входе: 2+2*2 На выходе: 6 На входе: 2*2*3+1 На выходе: 13Можно по жести извратиться и скомпилировать на ходу в класс вида: class MyClass$1234 { public int calc() { return 2+2*2; } } Затем в коде инстанцировать этот класс и вызвать метод. Я делал для тестов через javassist. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2008, 10:30 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
а напрямую к компилятору разве не реально подцепиться и попросить его посчитать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2008, 15:36 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
Самый грамотный вариант - использовать Regular expressions. Хотя передавать строку в запросе к dual - тоже шедевр ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2008, 08:37 |
|
||
|
2+2*2 =?
|
|||
|---|---|---|---|
|
#18+
работал с mvel, неплохая штука для таких вещей. поосоветовал бы посмотреть в его направлении. не бойтесь если доки не совсем свежие - в доках сам язык описан верно. и ещё, можно пробовать ваши выражения на разных версиях - у меня у самого почему-то версия 2.1.9 работала быстрее чем 2.2.0. ещё, иногда возникает ошибка illegal acces error. и без влияния на скорость - отключением jit-оптимизатора. В общем, в остальном - пуляешь строку - получаешь ответ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.06.2014, 11:03 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=35633305&tid=2126974]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
169ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 246ms |
| total: | 485ms |

| 0 / 0 |
