Re: [問題] function

作者: murmurer (呢喃)   2014-08-13 14:46:11
※ 引述《profyang (prof)》之銘言:
: ※ 引述《murmurer (呢喃)》之銘言:
: : 初學者求幫助 > <
: : http://ppt.cc/Vw-C
: : 題目是除了t、b、h外其他都已知
: : 然後給定b、h
: : 要你寫一個function來解出t
: : 但 function [h] = hei(b,t)
: : h = b和t為未知的關係式
: : 這樣輸出是h
: : 但我想用h和b當作輸入、t當作輸出
: : 在不改變圖中那條式子的狀況下
: : 可以怎麼改呢?
: : 我寫這樣被打槍...
: : function [t]=hei(h,b)
: : h=8000*(100+b-t)*log(100+b-t)+8000*(log(100+b)+1)*t-t^2/2-8000*(100+b)*log(100+b);
: : [t]=hei(4000,50);
: : 解答者會給予微薄100P
: : 謝謝~~~
: function [t] = hei(h,b)
: f=@(t)8000*(100+b-t)*log(100+b-t)+8000*(log(100+b)+1)*t-t^2/2-8000*(100+b)*log(100+b)-h;
: t=fzero(f,0);
: end
: 大概像這樣
: 不過這種t應該不只一組解喔~你可能要先大概估計他初始值是多少再求精確的
: 像我這邊初始值是0
P大你好
我先把
function [t] = hei(h,b)
f=@(t)8000*(100+b-t)*log(100+b-t)+8000*(log(100+b)+1)*t-t^2/2-8000*(100+b)*log
(100+b)-h;
t=fzero(f,0);
end
在同目錄下存成了一個.m檔
然後又開了一個.m
輸入
[t] = hei(4000,50)
不過一直有錯誤訊息 @@
另外您說的t不只一個
不知道是不是我誤解了題意
原題是長這樣
http://ppt.cc/ZbXN
非常謝謝你的回應~
作者: profyang (prof)   2014-08-13 15:20:00
沒有錯誤訊息阿? 你是跳出什麼錯誤訊息?另外我雖然沒有細看 你的t應該是時間 那>0的解好像就只有一個要解>0的解你可以改成t=fzero(f,[0 100]); 類似這樣我知道了 我f=blablabla那行因為太長了貼到PTT上面有換行你把它變成一行就好了
作者: murmurer (呢喃)   2014-08-13 15:28:00
原本要站內信的~結果 XDD 感謝~~~還想問問 f=@(t) 這樣的寫法是什麼意思呢?
作者: profyang (prof)   2014-08-13 16:56:00
代表他是t的函數 fzero要吃函數
作者: murmurer (呢喃)   2014-08-13 17:29:00
謝謝~

Links booklink

Contact Us: admin [ a t ] ucptt.com