Я пытаюсь написать функцию для калькулятора TI-Nspire cx cas. Мне нужно решить большую систему, используя встроенную функцию solve
. Я хочу сохранить результат solve
в некоторых переменных. Например, если результат равен u1=2 and u2=3
, я хотел бы сохранить 2 и 3 соответственно в переменных u1
и u2
. Кто-нибудь знает, как это сделать автоматически в программе?
Извлечь значение переменной из решения
Ответы (2)
Попробуйте функцию exp▶list(Expr,Var). Пример>
res:=solve({x+2*y=5,x-y=2},{x,y})
х=3 и у=1
l1:=exp▶list(res,{x,y})
[[3,1]]
person
fragg
schedule
29.11.2016
Для линейных уравнений вы можете просто использовать linsolve()
:
linSolve(x=5 and y=x+5, x, y)
-> {5,10}
Очень удобен символ вертикальной черты для доступа к переменным вывода:
solve(x=5 and y=x+5, x, y)
-> x=5 and y=10
x|x=5 and y=10
-> 5
Вы также можете сохранить значение:
res:={x, y}|x=5 and y=10
К сожалению, это не работает с or
в выводе solve
.
person
jeanggi90
schedule
09.01.2019
Я здесь, чтобы использовать
and
вместе с |
, что сводило меня с ума на час. Спасибо.
- person eigenfield; 13.07.2020
string(Solve(...))
для преобразования выводаSolve
в строку, а затем выполнить интенсивную обработку строк (используяinString
для поиска символов между"="
и" "
), чтобы извлечь числовые значения и преобразовать их в числа с помощьюexpr
. Это единственный способ, которым я могу это сделать. Извините, у меня сейчас нет времени писать код, но я проверил, иstring
преобразует выражение в строку. - person PGmath   schedule 01.03.2015