13 / 13 / 11
Регистрация: 03.09.2011
Сообщений: 1,026
1

Как можно уйти от больших чисел?

26.07.2015, 18:15. Показов 350. Ответов 3
Метки нет (Все метки)

Я написал функцию, которая преобразует логическое условие в математическое выражение. Пример :

Логическое: fling = 1 and fland=1 and [in] in ( 1, 2, 2 , 3,'sadsadsada')

Математический эквивалент: (2858*468*2808*468*1003 * (468+470+470+472+9649) )

По некоторому правилу я заменяю ключевые слова на + и *.

Неключевые слова я преобразую следующим образом:

C#
1
2
3
4
 for (int i = 1; i <= word.Length; i++)
            {
                sum = sum + (word[i - 1] * i);//Умножаем код символа на его позицию
            }
Потом я скармливаю полученное математическое выражение сюда:

C#
1
2
3
ScriptControl sc = new ScriptControl { Language = "VBScript" };    
string expression = str;
            return (long)this.sc.Eval(expression);
Полученные результаты я сравниваю и на основании этого я делаю вывод равны ли логические выражения или нет:

Эти равны:

fling = 1 and fland=1 and [in] in ( 1, 2, 2 , 3,'sadsadsada')

[in] in ( 1, 2, 2 , 3,'sadsadsada') and fling=1 and fland = 1
А эти нет:

field=1 and field2=2

field=1 or field2=2
Этот подход работает, но возвращаются здоровенные числа... Как можно уйти от них в моей текущей реализации?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.07.2015, 18:15
Ответы с готовыми решениями:

Можно ли к случайным величинам применить закон больших чисел
Случайные величины КСИn, n = 1, 2, ..., принимают значения 1 и -1 с вероятностями (1-2^-n)/2 и...

Сколько различных пятизначных чисел ,больших 20000, можно составить?
Сколько различных пятизначных чисел ,больших 20000, можно составить из цифр 1,2,3,4 если каждая...

Можно ли на Java разрабатывать сайты? Или лучше сразу уйти на PHP?
Очень привлекает возможность начать разрабатывать приложения на андройд. Для начала простые...

Как можно ускорить рендер больших текстур?
Задался вопросом: Имеются две текстуры 1024х1024. Они подаются на вход фрагментному шейдеру,...

3
79 / 76 / 17
Регистрация: 18.03.2010
Сообщений: 387
27.07.2015, 13:29 2
Цитата Сообщение от iluxa1810 Посмотреть сообщение
преобразует логическое условие в математическое выражение
Может лучше в строковое представление преобразовывать?
0
839 / 497 / 325
Регистрация: 29.12.2009
Сообщений: 1,106
27.07.2015, 17:03 3
Может и не надо пытаться уйти от них?
Попробуйте использовать BigInteger
https://msdn.microsoft.com/ru-... .110).aspx
0
13 / 13 / 11
Регистрация: 03.09.2011
Сообщений: 1,026
27.07.2015, 20:44  [ТС] 4
Цитата Сообщение от Dmitry_gdv Посмотреть сообщение
Может лучше в строковое представление преобразовывать?
Тогда field=1 and field2=3 не будет равно 1=field and 3=field2, хотя условия эквивалентны.

Добавлено через 2 минуты
MicM, если я не ошибаюсь, то ScriptControl максимум что возвращает так это long
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.07.2015, 20:44

OpenDialog: как уйти от него?
Доброго дня! есть часть кода см.ниже . Как сделать так чтобы файл Word отрывать не через OpenDialog...

Как уйти из рабства таблиц
как или чем можно заменить все структурные таблицы притом не изменяя вид сайта вот код &lt;html&gt;...

Как вычислять факториал таких больших чисел, как 1000
подскажите есть ли возможность написать программу которая считает факториал таких больших чисел как...

Как найти арктангенс больших чисел?
Думал что научился находить арктангенс разных чисел разложением в ряд Тейлора но работает только...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.