精品偷拍一区二区三区,亚洲精品永久 码,亚洲综合日韩精品欧美国产,亚洲国产日韩a在线亚洲

  • <center id="usuqs"></center>
  • 
    
  • 急救,急救,mathematica 一元函數(shù)求極值

    急救,急救,mathematica 一元函數(shù)求極值
    急救,急救,我有一個關(guān)于一元函數(shù)求極值的題目,要是解答不出來我就完了.
    題目是這樣的:一元函數(shù)求極值的問題:請設(shè)計一個程序包求一元函數(shù)在[a,b]上最大值和最小值.要求運(yùn)行時只要用戶任意輸入一個一元函數(shù)和連續(xù)區(qū)間[a,b],就計算并告知用戶該函數(shù)在[a,b]上取最大值和最小值的點和相應(yīng)的最大值和最小值.
    我的程序是:
    BeginPackage["jizhi`"]
    jizhi::uasage = "jizhi is a programme for making MAX and MIN in a hanshu if \
    user input a f(x) and geting a exact (x,f(x))"
    Begin["`Private`"]
    Module[{a,b,x},
    f[x_] := Input[ Inputhanshu];
    a = Input[please Input zuoduandian];
    b = Input[please Input youduandian];
    zhudian = Solve[f[x] == 0,x];
    zhudianbiao = Union[{x,f[x]} /.zhudian,{{a,f(a)},{b,f(b)}}];
    fmax = Max[Transpose[zhudianbiao][[2]]];
    fmin = Min[Transpose[zhudianbiao][[2]]];
    x1 = Position[zhudianbiao,fmin];
    x2 = Position[zhudianbiao,fmax];
    Min = zhudianbiao[[x1[[1,1]]]];
    Max = zhudianbiao[[x2[[1,1]]]];]
    End[]
    EndPackage[]
    請指點下為什么運(yùn)行不對呢?
    若解答正確,小女子感恩不盡.
    非常感謝你能抽時間幫我看,但是我用你修改的程序運(yùn)行了一遍,還是不對啊?
    你修改后的程序是
    BeginPackage["jizhi`"]
    jizhi::uasage = "jizhi is a programme for making MAX and MIN in a hanshu if \
    user input a f(x) and geting a exact (x,f(x))"
    Begin["`Private`"]
    Module[{a,b,x},f = Input[Inputhanshu];
    fff[x_] := f
    a = Input[please Input zuoduandian];
    b = Input[please Input youduandian];
    zhudian = Solve[fff[x] == 0,x];
    zhudianbiao = Union[{x,fff[x]} /.zhudian,{{a,fff[a]},{b,fff[b]}}];
    fmax = Max[Transpose[zhudianbiao][[2]]];
    fmin = Min[Transpose[zhudianbiao][[2]]];
    x1 = Position[zhudianbiao,fmin];
    x2 = Position[zhudianbiao,fmax];
    Min1 = zhudianbiao[[x1[[1,1]]]];
    Max1 = zhudianbiao[[x2[[1,1]]]];
    {Min1,Max1}]
    End[]
    EndPackage[]
    再幫我看看吧~我用的是4.0
    其他人氣:227 ℃時間:2020-06-02 17:51:07
    優(yōu)質(zhì)解答
    在外面定義若干函數(shù),例如
    fg[x_] := 3x + 1
    模塊修改如下:
    Module[{a,b,x},fff = Input[Inputhanshu];
    a = Input[please Input zuoduandian];
    b = Input[please Input youduandian];
    zhudian = Solve[fff[x] == 0,x];
    zhudianbiao = Union[{x,fff[x]} /.zhudian,{{a,fff[a]},{b,fff[b]}}];
    fmax = Max[Transpose[zhudianbiao][[2]]];
    fmin = Min[Transpose[zhudianbiao][[2]]];
    x1 = Position[zhudianbiao,fmin];
    x2 = Position[zhudianbiao,fmax];
    Min1 = zhudianbiao[[x1[[1,1]]]];
    Max1 = zhudianbiao[[x2[[1,1]]]];
    {Min1,Max1}]
    出現(xiàn)Input[Inputhanshu]的時候,只是輸入函數(shù)名,例如上面定義的 fg ,而不是輸入函數(shù)表達(dá)式
    另外Min不能用,它是內(nèi)部函數(shù),我把它改成 Max1、Min1
    還有,你沒有求極值,是求了函數(shù)的零點,你的zhudianbiao包括端點值和零點值,這個我沒有改
    再就是,你是不是要輸出Min1,我把它寫上了,就是{Min1,Max1}
    最后,最大最小值Mathematica5.1中分別用用
    Maximize[{(1-x^2)^2,x>=-2,x=-2,x4}}
    Out[78]=
    {0,{x->-1}}
    實現(xiàn),用這個產(chǎn)生你的zhudianbiao吧!
    補(bǔ)充
    如果一定要在Input[Inputhanshu]輸入函數(shù)式的話,那么應(yīng)將
    f[x_] := Input[ Inputhanshu]
    修改為
    f = Input[ Inputhanshu]
    fff[x_] := f
    另外你在是用Module[]的時候是立即執(zhí)行的,如果想定義成軟件包的話應(yīng)該這樣
    f[x_]:=Module[.]
    只有這樣,在調(diào)入軟件包的時候,才不至于立即出現(xiàn)輸入窗口.只有在輸入并執(zhí)行f[x]的時候出現(xiàn)輸入窗口(Input[Inputhanshu])才對.
    我來回答
    類似推薦
    請使用1024x768 IE6.0或更高版本瀏覽器瀏覽本站點,以保證最佳閱讀效果。本頁提供作業(yè)小助手,一起搜作業(yè)以及作業(yè)好幫手最新版!
    版權(quán)所有 CopyRight © 2012-2024 作業(yè)小助手 All Rights Reserved. 手機(jī)版