㈠ 高手解釋一下這段MATLAB程序,(有效期5天)
這個程序很簡單,入門的matlab。
for x=0:0.005:10 % for循環,x初值為0,步長為0.005,終值為10
x1=mod(x,1); %對x作除以1並取余數,實質是 取得x的小數部分並賦值給x1
if x1>=0&x1<=0.5 %如果,x1的范圍是區間 [0,0.5]
y1=-4*x1+2; %那麼,y1賦值為-4*x1+2
else %否則
y1=4*x1-2; %那麼,y1賦值為4*x1-2 【作者的程序很垃圾影響速度,這段if可以寫成,y1=4*x1-2, if x1>=0&x1<=0.5 y1=-y1;】
end
subplot(2,1,1),plot(x,y1); %繪制圖像,有兩個坐標圖形,第一個為以 (x,y1)值來繪制
y2=1.5*sin(pi/10*x); %這段賦值不必講了吧, 其中 pi是圓周率
plot(x,y2); %以(x,y2)繪制曲線,
hold on; %這個是圖形保持的語句,不必理會。
if(y2>=(y1+0.05)) %判斷,如果y2大於等於+0.05
y_out=1.8; %那麼,變數y_out=1.8
else if(y2<=y1) %否則,如果y2小於等於y1
y_out=0.001; %那麼,變數y_out=0.001
else %否則,也就是y2 處於區間 (y1,y1+0.05)
y_out=0.001:0.01:1.8; %那麼,y_out變數的值是矩陣,初值為0.001,步長0.01,終值1.8
end
end
subplot(2,1,2),plot(x,y_out); %在第二個副圖,以變數 (x,y_out) 來繪制圖像
hold on;
end
--------------------------
程序語句部分解釋完畢,
LZ還有什麼疑問,直接問吧。