這道題如何用MATLAB編寫,請問這道題怎麼用matlab編寫

2021-03-04 08:28:51 字數 5621 閱讀 5861

1樓:買可愛的人

用線性規劃求解:[x,fval]=linprog(f,a,b)設甲、乙工具機分別為x1,x2臺,則利潤=4000*x1+3000*x2,則f=[-4000;-3000];

約束:2*x1+x2≤10

x1+x2≤8

x2≤7

則 a=[2,1;1,1;0,1];b=[10;8;7];

在命令列執行:

>> f=[-4000;-3000];

a=[2,1;1,1;0,1];

b=[10;8;7];

[x,fval]=linprog(f,a,b)optimization terminated.

x =2.0000

6.0000

fval =

-2.6000e+04

說明:甲、乙工具機分別為2臺、6台時,利潤最大為26000元。

請問這道題怎麼用matlab編寫

2樓:匿名使用者

matlab 裡正好有這個函式 normspec:

a = input('a? ');

b = input('b? ');

p = normspec([a, b])

如果輸入 2 和 2.5 的話,畫出來的是下面這個樣子。0.01654 就是兩點間的概率。

如果你想自己程式設計算的話,可以考慮用:

normcdf(2.5)-normcdf(2)來計算這個概率。畫圖的話,可以用 fill() 來填充那個面積的顏色。

3樓:上辰教育

s(find(s=='d'))=;

這道題要怎麼做「matlab」?

4樓:匿名使用者

編寫乙個函式,計算下面函式的值。可以這樣來實現。

1、編寫乙個自定義函式檔案,並儲存 m檔案。如 myfun1.m,其內容

unction y=myfun1(x)

n=length(x);

for i=1:n

if x(i)>=0 & x(i)<1

y(i)=x(i).^2;

elseif x(i)>=1 & x(i)<2y(i)=x(i).^2-1;

else y(i)=x(i).^2-2*x(i)+1;

endend

2、在命令視窗中,輸入

>>x=0:0.5:2.5;

>>y=myfun1(x)

3、執行結果請題主自行檢測。

用matlab怎麼寫這幾道題

5樓:匿名使用者

第一題:

function y=fuc2(i)

y=0;

if i==0

y=1; %無意義的輸出

else

for j=1:i

y=y+2^j;

endend

在***mand windows中輸入

>> fuc2(63)

ans =

1.8447e+019

第二題:

j=0;

for i=2000:3000

if (mod(i,400)== 0)||((mod(i,4)==0)&&(mod(i,100)~= 0))

j=j+1;

endend

x=zeros(1,j);

j=1;

for i=2000:3000

if (mod(i,400)== 0)||((mod(i,4)==0)&&(mod(i,100)~= 0))

x(1,j)=i;

j=j+1;

endend

執行後,j的數值即為閏年的個數,x陣列中的數即為各個閏年的年份

第三題:

syms a

simplify(cos(4*a)-4*cos(2*a)+3)

執行後,就可得到

ans =

8*sin(a)^4

第四題:

for i=1:0.01:10

subplot(2,2,1); plot(i,sin(2*i)); hold on

title('sin2x')

subplot(2,2,2); plot(i,tan(i));ylim([-10,10]) ;hold on

title('tanx')

subplot(2,2,3); plot(i,log(i)); hold on

title('lnx')

subplot(2,2,4); plot(i,10^i); hold on

title('10x')

end執行後就可以得到**如下:

注意:以上4個程式最好都以m檔案的形式寫比較好。

6樓:匿名使用者

**********=第乙個*****===function output = ***(i)if i == 0

output = 0;

else

output = 1;

for j = 1:i

output = output * j;

endendend

matlab程式設計,請問這道題該如何程式設計,求解答! 10

7樓:一love我

function [m]=**ean(a,b)

m=sum(a.*b)/sum(b);end

求這兩道題目 用matlab編寫這2道題的函式 急急急

8樓:匿名使用者

function y=f(x)

% f.m file

% input x: a real number$ output y: a real numberif x<0,y=x^2+1;

elseif 010

y=2^x+3;

end>>> f(5)

第二個可以用solve, 因為是線性方程組,所以也可以用線性代數的方法,inv(a)*b % a是係數矩陣,b是方程組右側的向量

9樓:匿名使用者

^(1)

function y=tiaojian(x)if x<0

y=x^2+1;

elseif x<=10

y=2*x-1;

else

y=2*+3;

end>> tiaojian(5)

ans =

9(2)a=[5 6 0 0 0;1 5 6 0 0;0 1 5 6 0;0 0 1 5 6;0 0 0 1 5];

b=[1 0 0 0 1]';

x=inv(a)*b

x =2.2662

-1.7218

1.0571

-0.5940

0.3188

這道題用matlab怎麼做?

10樓:匿名使用者

i=1;

while(1)

s=sum([1:i]);

if s>=100

break

endi=i+1;

endi

11樓:匿名使用者

x0=1;

x=x0;

i=1;

while 1

if sum(x)>100

i-1x(1:end-1)

break;

endi=i+1;

x(i)=x(end)+1;end

下面這道題,求數學建模問題的最優解,用matlab怎麼程式設計? 20

12樓:匿名使用者

function love%主函式,也可以把這一段放在命令窗中執行.那樣得把sub_f(x)函式存放在work中

clear;clc;

% x11,x12,x13,y22,y33,x22,x23 ->x(1),x(2),x(3),x(4),x(5),x(6),x(7)

maxf=inline('0.25*(x(1)+x(2)+x(3))*x(4)+(x(1)+x(2)+x(3))*(1-x(4))*0.2+(-x(2)+x(6)+x(7))*x(5)*0.

23+(-x(2)+x(6)+x(7))*(1-x(5))*0.185','x') ;

%st. x(2)*80+x(3)*100+x(7)*85<=900

%-x(3)-(7)<=0

%x(3)+x(7)<=3.5

a=[0 80 100 0 0 0 85

0 0 -1 0 0 0 -1

0 0 1 0 0 0 1];

b=[900;0;3.5];

%0<=x(2)<=8.2

%0<=x(4)<=1

%0<=x(5)<=1

lb=[-inf 0 -inf 0 0 -inf -inf];

ub=[inf 8.2 inf 1 1 inf inf];

x0=0.5*ones(1,7);

aeq=;beq=;

[x,f]=fmincon(maxf,x0,a,b,aeq,beq,lb,ub,@sub_f);

x=x,f=-f

function [f feq]=sub_f(x)

f(1)=(x(1)+x(2)+x(3))*x(4)*1.4+(x(6)-x(2)+x(7))*x(5)*1.65-7.5;

f(2)=(x(1)+x(2)+x(3))*(x(4)*1.4+6.1)+(x(6)-x(2)+x(7))*(x(5)*1.65+7.35)-76.5;

feq(1)=0;feq(2)=0;

結果:x =

1.0e+015 *

-4.4110 0.0000 -0.1376 0.0000 0.0000 -4.1338 0.1376

f =4.8952e+018

也可以看我的部落格文章的例子;

13樓:匿名使用者

用fmincon函式

你看看help fmincon

主要是建立兩個m檔案,乙個myfun放你的f(x),注意,這裡要放-f(x),因為你要求最大值,fmincon是求最小值的

另乙個mycon放非線性約束條件,這倆,(x11+x12+x13)y11*1.4+(x22-x12+x23)y22*1.65<=7.5

(x11+x12+x13)(y11*1.4+6.1)+(x22-x12+x23)(y22*1.65+7.35)<=76.5

把線性約束條件寫成矩陣a,b

直接呼叫

x=fmincon(@myfun,x0,a,b,,,lb,ub,@mycon)

lb,ub是自變數的上下限

x0為初值,一般需要多嘗試幾個初值

14樓:

其實數學建模還有很多軟體,這樣的優化問題都是用lingo求解的~

15樓:匿名使用者

對於優化問題,你可以嘗試使用lingo10,做起來比matlab要方便的多

如何用matlab解決這道題目,如何用matlab解決這道題目

a 0.04 0.04 0.12 0.56,1.56,0.32 0.24,1.24,0.28 y 3,1,0 x inv a y x就是結果。如何用matlab求解這道題目?求超線性方程組 rng b randi 10,3,1 a 1 1 1 1 1 2 x a b matlab 中 左除 會按照最...

這道題如何解,如何解這道題?

第一次拿走1,3,5,號,剩下2x1,2x2,2x3,號 第二次拿走2x1,2x3,2x5,號,剩下2 2x1,2 2x2,2 2x3,號 第三次拿走2 2x1,2 2x3,2 2x5,號,剩下2 3x1,2 3x2,2 3x3.號 第n次拿走2 n 1 x1,2 n 1 x3,2 n 1 x5,號...

這道題如何解,如何解這道題?

經典的底角為80度角的等腰三角形問題,顯然 cd ce,設 2 3 2 則 1 abd 4 a 180 8 4 deb 90 5 90 3 6 5 90 sin a sin 6 be ae be bc sin 1 sin 5 sin 180 8 sin 90 3 sin 4 sin 5 90 2co...