1樓:匿名使用者
第一種方法:
n=input('n=');
s1='x^2=';
s2=[s1 num2str(n)]; %將字串和數字合併成乙個新的字串!!!
syms x;
solve(s2);
第二種方法:加上syms x n;
因為我這裡沒裝matlab,所以也不確定行不行,祝你好運!
2樓:天雲一號
eval([num2str(x1), '*k1+b1=0']) 後面乙個等式同理
matlab solve函式中變數賦值問題
3樓:匿名使用者
可以使用subs函式:12
3456
7>> subs(s.c1)
ans =
(x1*dq(1) + 800)/(dq(1) + 1000)>> subs(s.c2)
ans =
(800*b(1) + x2*dq(2) + x1*b(1)*dq(1))/(dq(1) + dq(2) + 1000)
但這樣帶來的問題是,陣列的元素無法帶入,例如dq(1)、dq(2)等。可以進一步指定要代入的符號變數,例如12
3>> subs(subs(s.c1),'dq(1)',dq(1))ans =
x1/201 + 160/201
但這種做法對於類似s.c2的表示式裡面有多個陣列元素的情況,就會非常繁瑣,關於這一點,我沒有好的辦法,希望有高手能指教。
matlab solve解方程,已經賦值變數,結果仍然還有變數
4樓:匿名使用者
出在
問題原因有:
1、宣告變數錯誤,變數應該寫所求的變數。正確的寫法
syms s1 sd sdp;
2、 solve 命令函式 書寫錯誤(多了單引號)。正確的寫法
[s1,sd,sdp]=solve(0.5744==log(1500)/(log(1500)+s1),s1==sdp+sp,9==sdp+3+sd,'s1','sd','sdp')
執行下列**
>>syms s1 sd sdp;
>>pr1=0.57;sp=3;
>>[s1,sd,sdp]=solve(0.5744==log(1500)/(log(1500)+s1),s1==sdp+sp,9==sdp+3+sd,'s1','sd','sdp')
>> s1=vpa(s1,10)
>> sd=vpa(sd,10)
>> sdp=vpa(sdp,10)
matlab solve輸出的變數怎麼用
5樓:
x1 = double(xoptimal)
轉換為數字再使用
matlab怎麼將多個變數名輸出到excel中
你可以直接在m檔案裡面用xlswrite函式 filename sheet range都是要加單引號滴 xlswrite filename,m 將矩陣m的資料寫入名為filename的excel檔案中。xlswrite filename,m,sheet 將矩陣m的資料寫入檔名為filename中的指...
java中的賦值運算子怎麼用
賦值運算子的意思是將運算子右側的物件或者數值傳遞給左側的物件或者變數。基本的賦值運算子是 一開始可能會以為它是 等於 其實不是的。它實際上意味著把右邊表示式的值賦給左邊的運算數。賦值運算表示式的值也就是所賦的值。也就是說,a 3 的值是 3。擴充套件資料賦值運算將原變數的值拷貝到新變數中 傳值賦值 ...
Matlab的polyxpoly怎麼用?給我兩個例子
你上面的那個例子好像不行,語法 xi,yi polyxpoly x1,y1,x2,y2 值針對二維平面。比如,y1 x1 2 y2 x2 2 分別給出x1,x2在 5,5 上面的值,可以求得y1,y2對應的值,在把x1,x2,y1,y1四組向量帶入 xi,yi polyxpoly x1,y1,x2,...