Страница: 1 |
Страница: 1 |
Вопрос: Как рассчитать математическое выражение
Добавлено: 21.10.05 11:37
Автор вопроса: Екатерина
Есть простое выражение, хранящеееся в переменной String
GapValue = "(2,6+2,1)/2"
Пользовалась средствами Excel
CType(Excel.Evaluate(GapValue), String)
Есть ли функция в VisualStudio для расчета...?
Ответы
Всего ответов: 5
Номер ответа: 1
Автор ответа:
Pashenko
ICQ: 176176951
Вопросов: 14
Ответов: 655
Профиль | | #1
Добавлено: 21.10.05 11:42
http://algolist.manual.ru/syntax/parsear.php
Номер ответа: 2
Автор ответа:
GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #2
Добавлено: 21.10.05 13:07
Есть функция.
Компилятор называется.
Dim c As CodeDom.Compiler.ICodeCompiler = New Microsoft.VisualBasic.VBCodeProvider().CreateCompiler
Dim params As New CodeDom.Compiler.CompilerParameters
params.GenerateInMemory = True
Dim s As String = "public module DummyModule" & vbNewLine & "public function dummy (byval x as integer) as integer" & vbNewLine & "return x+7" & vbNewLine & "end function" & vbNewLine & "end module"
Dim results As CodeDom.Compiler.CompilerResults = c.CompileAssemblyFromSource(params, s)
Dim mymodule As Reflection.Module = CType(results.CompiledAssembly.GetModules()(0), Reflection.Module)
Dim funcparams() As Object = {5}
Console.WriteLine(mymodule.GetType("ummyModule".InvokeMember("dummy", Reflection.BindingFlags.InvokeMethod, Nothing, Nothing, funcparams))
Console.ReadLine()
End Sub
Номер ответа: 3
Автор ответа:
Nash Bridges
Вопросов: 5
Ответов: 139
Профиль | | #3
Добавлено: 21.10.05 16:28
SELECT A = (2,6+2,1)/2 в ADO например
Номер ответа: 4
Автор ответа:
K&M
ICQ: 225442067
Вопросов: 20
Ответов: 170
Профиль | | #4
Добавлено: 21.10.05 22:07
Я dll-ку недавно написал - рассчитывает любые выражения. Распознает также COS, SIN, TG, ACOS, ASIN, ATG. Правда на .NET... могу выложить.
Номер ответа: 5
Автор ответа:
K&M
ICQ: 225442067
Вопросов: 20
Ответов: 170
Профиль | | #5
Добавлено: 21.10.05 22:42
А это оказывается и так .NET... ну тогда тем более могу выложить