Написание модуля SMath

Написание модуля SMath - Преобразование типов - Сообщения

#1 Опубликовано: 23.07.2012 09:33:03
Shwartz

Shwartz

0 сообщений из 4 понравились пользователям.

Группа: User

Добрый день!
Есть желание написать модуль, но не пролучается преобразовать типы данных:

bool IPluginLowLevelEvaluation.ExpressionEvaluation(Term root, Term[][] args, ref Store context, ref Term[] result)
{
if (root.Type == TermType.Function && root.Text == "post" && root.ChildCount == 2)
{

Term[]
arg1 = Decision.Preprocessing(args[0], ref context),
arg2 = Decision.Preprocessing(args[1], ref context);

//..Как перевести Term[] в string, чтобы использовать, например, в MessageBox?
string MSG= (string)args[0];// public static explicit operator string(Term[] obj)?

javascript:__doPostBack('forum$ctl03$PostReply','') MessageBox.Show(MSG, "Name", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
.
.
.

Спасибо за помощь новичку в ООП!
#2 Опубликовано: 23.07.2012 20:06:52
уни

уни

156 сообщений из 355 понравились пользователям.

Группа: User

Ответ зависит от того что находится в args[][]. Если нужно вывести термы в виде строки, то это один вариант, если нужно вывести число, которое введено как параметр - это другой, если же там в качестве параметра введён текст, то уже третий вариант.

Может поможет вот этот кусок кода:


            Term[] out1 = Decision.Preprocessing( Вых.ToArray(), ref context );

            // Вычисляем получившийся вектор
            TMatrix вых = SMath.Math.Numeric.Expression.Calculate( out1, context );

            // Переписываем ответ в терминах double[]
            int r = x.GetLength(0);
            for ( int ii = 0; ii < r; ii++ ) {
                dx[ii] = вых.unit[ ii, 0 ].obj.ToDouble();
            }

Из вот этого исходника: ODESolvers/Functions/rkfixed.cs
Россия навсегда! Вячеслав Мезенцев
1 пользователям понравился этот пост
Shwartz 15.09.2012 06:09:00
#3 Опубликовано: 01.10.2012 10:56:43
Shwartz

Shwartz

0 сообщений из 4 понравились пользователям.

Группа: User

искал что-то типа этого:
string MSG4 = SMath.Math.Numeric.Expression.Calculate(arg4, context).obj.ToString();
Спасибо за наводку!
  • Новые сообщения Новые сообщения
  • Нет новых сообщений Нет новых сообщений