用Matlab程式設計,已知兩個點的座標,怎麼求直線的方程啊

時間 2021-09-10 08:40:48

1樓:墨汁諾

k=b(2)-a(2)/((b(1)-a(1));k是係數;b=a(2)-k*a(1);b是常數。(方程:y=k*x+b)。

設點1(x1,y1),點2(x2,y2)

a=polyfit([x1,x2],[y1,y2],1)

則方程為y=a(1)x+a(2)

例如:function qiuzhixian(varargin)%求通過一點或兩點的直線

%%%%使用方法:qiujzhixian([2 3]),qiujuli([2 3],[4 5]),

if nargin==0

disp('未輸入,請至少輸入一點座標值')

endif nargin==1

x1=varargin;

p=polyfit([x1(1) 0],[x1(2) 0],1);

eq=poly2sym(p);

disp(['輸入只有一點,則求通過這點和原點的直線方程為:y = ' char(eq)])

endif nargin==2

x1=varargin;

x2=varargin;

p=polyfit([x1(1) x2(1)],[x1(2) x2(2)],1);

eq=poly2sym(p);

disp(['輸入有兩點,則求通過這兩點的直線方程為:y = ' char(eq)])

endif nargin>2

disp('輸入超過兩個點,請至多輸入兩點座標值')

endend

2樓:匿名使用者

k=b(2)-a(2)/((b(1)-a(1));k是係數;b=a(2)-k*a(1);b是常數。(方程:y=k*x+b)。

3樓:手機使用者

——————————————

a是一個0-1對稱方陣,如果第i個點和第j個點相連,那麼a(i,j)=a(j,i)=1,如果不相連,那麼a(i,j)=a(j,i)=0

b是2列的矩陣,第i行就是第i個點的座標

下面的連結是一個例子

————————————————————————還有就是這兩天這個圖我已經見過n次了,希望做數模競賽的朋友用自己的實力比賽,即使使用最一般的plot函式,加幾個迴圈照樣可以輕鬆繪製的。

4樓:

[k,b]=solve('3+5*k+b=0','4*k+b=0')k為線性係數,b為常係數。

k=12

b=-3

5樓:落水神

(⊙o⊙)…;

k=(b(1,2)-a(1,2))/(b(1,1)-a(1,1))

怎麼用matlab程式設計求解這個方程的數值解啊

6樓:匿名使用者

fun=@(x,y)y.*log10(y)-x建立關於x,y的匿名函式

log10(x)由於matlab中自然對數的符號是log(與我們數學上的不同),以10為底的對數符號是log10,同理有log2,但是沒有log3等哦

vpa將得到的符號解轉化為指定精度的小數,比如vpa('sqrt(2)',10)將sqrt(2)表示10位精度的小數

fzero是matlab求解一元函式零點的內建函式

fsolve是matlab中求解方程組解(可以求解複數)的內建函式,功能強於fzero

fval是返回fun(x)的值,也就是說fzero和fsolve返回方程的解x,那麼此時的fun(x)就是fval

這個方法比較多 可以數值也可以解析求解

1.解析求解

>> solve('y*log10(y)=3','y')

ans =

3*log(10)/lambertw(3*log(10))

>> vpa(ans)

ans =

4.5555357051951280236911974082484

2.數值解法這個可以使用fsolve和fzero,前者的功能更加強大,但是對於這個問題fzero就可以了

>>x=3;

>>fun=@(y)y*log10(y)-x;

%使用fsolve

>> [x,fval]=fsolve(fun,rand)

optimization terminated: first-order optimality is less than options.tolfun.

x =4.5555

fval =

3.9620e-008

%使用fzero

>> [x,fval]=fzero(fun,5)

x =4.5555

fval =

-8.8818e-016

7樓:匿名使用者

f=@(x,y)y.*log10(y)-x;

x=3;

y=fzero(@(y)f(3,y),10)

matlab怎麼畫兩個已知橢圓方程的公切線

憋不出來冷 第一,利用matlab繪製下圖橢圓方程的影象。close all clear all clc a 5 b 4 c sqrt a 2 b 2 syms x y h ezplot x 2 a 2 y 2 b 2 1 set h,color 0,0,0 linewidth 2 axis equ...

在MATLAB中如何求兩個圓的交點,已知半徑和圓心座標。fsolve引數好像不行。麻煩高手幫忙解決一下

直接寫出圓的方程,然後用solve a 0 b 0 就行了,a,b代表圓的方程。 a1 1 a2 2 b1 4 b2 5 r1 6 r2 7 給出圓元引數,可以自己修改 x,y solve x a1 2 y b1 2 r1 2,x a2 2 y b2 2 r2 2 的到交點的解析解 x 7 4 1 ...

怎樣用matlab畫幾個已知的點

不用30個plot,把30個點的x座標都放到x 1 30 裡,y座標放到y 1 30 裡就行了 plot x,y,o x是二維點的橫座標向量 y是二維點的縱座標向量 matlab怎麼把一組已知的點畫在座標圖上?1 雙bai擊matlab軟體du圖示,開啟matlab軟體,可以看到zhimatlab軟...