Расчет формулы по значениям ячеек - C#

Узнай цену своей работы

Формулировка задачи:

Программа такая: Вводим 9 ячеек под названием A0, A1, A2, ..A8; (забиваем их числами). Далее вводим целевую ячейку под названием A9, в ней должна храниться формула с использованием предыдущих ячеек (не обязательно всех). Например: A0 = 1 A1 = 5 A2 = 8 A3 = 0 A4 = 6 A5 = 10 A6 = 7 A7 = 12 A8 = 11 A9 = (A2 + A6)/A1 Результат число: 3.

Решение задачи: «Расчет формулы по значениям ячеек»

textual
Листинг программы
double A0 = 1, A1 = 5, A2 = 8, A3 = 0, A4 = 6, A5 = 10, A6 = 7, A7 = 12, A8 = 11; 
string formula = "(A2 + A6)/A1";
LambdaExpression lambda = System.Linq.Dynamic.DynamicExpression.ParseLambda(
    new ParameterExpression[] {
        ParameterExpression.Variable(typeof(double), "A0"),
        ParameterExpression.Variable(typeof(double), "A1"),
        ParameterExpression.Variable(typeof(double), "A2"),
        ParameterExpression.Variable(typeof(double), "A3"),
        ParameterExpression.Variable(typeof(double), "A4"),
        ParameterExpression.Variable(typeof(double), "A5"),
        ParameterExpression.Variable(typeof(double), "A6"),
        ParameterExpression.Variable(typeof(double), "A7"),
        ParameterExpression.Variable(typeof(double), "A8"),     
    },
    typeof(double),
    formula
);
double A9 = (double)lambda.Compile().DynamicInvoke(A0,A1,A2,A3,A4,A5,A6,A7,A8);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4 из 5
Похожие ответы