1、實驗?zāi)康模?/strong>
1)鞏固并加深對MATLAB語言程序設(shè)計知識的理解;
2)掌握和提高MATLAB語言編程和程序調(diào)試的基本技能;
3)進一步理解和運用結(jié)構(gòu)化程序設(shè)計的思想和方法;
4)提高運用MATLAB語言解決實際問題的能力。
2-1)、分別使用for語句和while語句求1~100的和。
clear all
sum = 0;
for i = 1:100 %for 循環(huán)求和
sum = sum + i;
end
sum
clear all
i = 1;
sum = 0;
while (i <= 100) % while循環(huán)求和
sum = sum + i;
i = i+1;
end
sum
while語句可以用來實現(xiàn)“當(dāng)”型的循環(huán)結(jié)構(gòu),它的一般形式如下:
while(表達式)
????????MATLAB循環(huán)語句體
end
使用for語句循環(huán)需要預(yù)先知道循環(huán)體的執(zhí)行次數(shù),這種循環(huán)一般交確定循環(huán)
for循環(huán)的基本結(jié)構(gòu)形式如下:
for 循環(huán)變量 = 變量初值:步長值:變量終值
????????MATLAB循環(huán)語句體
end
在MATLAB語句之后必須使用關(guān)鍵字end作為整個循環(huán)結(jié)構(gòu)的結(jié)束
注意MATLAB中沒有類似C語言中 ++、+=等運算操作符
2-2)、編寫分段函數(shù)
的M函數(shù)文件,存放于文件ff.m中,并計算出
的值。
根據(jù)題目要求,我們先新建一個M函數(shù)文件,將分段函數(shù)表達式,用if elseif else 選擇結(jié)構(gòu)的形式描述出來即可
function y = ff(x)
%分段函數(shù)表達式
if (x>=0 & x<1)
y = x;
elseif (x>=1 & x<=2)
y = 2*x-1;
else
y = 0;
end
在命令文件中調(diào)用這個函數(shù)
y = ff(-3)
y = ff(1/2)
y = ff(sqrt(2))
輸出結(jié)果如下:
?2-3)、編程實現(xiàn)將百分?jǐn)?shù)的分?jǐn)?shù)轉(zhuǎn)化為五級制分?jǐn)?shù),如:90~100:優(yōu)、80~89:良、70~79:中、60~69:及格、59以下為不及格,并可將屏幕上任意輸入的百分制成績轉(zhuǎn)換為五分制成績。
grade = input('請輸入百分制成績');
switch fix (grade / 10) %fix向下取整
case{9,10}
grade = '優(yōu)';
case{8}
grade = '良';
case{7}
grade = '中';
case{6}
grade = '及格';
otherwise %其他
grade = '不及格';
end
grade
先用input語句輸入成績,如果想將百分制成績轉(zhuǎn)換為五分制成績,用switch case結(jié)構(gòu)更好一點,可以先將成績范圍縮小 fix (grade / 10),將成績除以10再向下取整,就可以實現(xiàn)60~69的成績段用6代替,80~89的成績用8來代替…… switch case最后也要加end
最后將grade輸出看結(jié)果
2-4)、使用嵌套for語句求矩陣A的所有元素之和,要求矩陣A由向量變形而來(使用reshape函數(shù))。
clear all
A = [1:25]; %生成1~25的行向量
A = reshape(A, [5,5])'; %使用reshape函數(shù),重構(gòu)成5*5的矩陣,這里需要轉(zhuǎn)置
[m, n] = size(A);
sum = 0;
for i = (1:m) %嵌套for循環(huán)語句 求矩陣所有元素之和
for j = (1:n)
sum = sum + A(i,j);
end
end
sum
這里用到了雙重for循環(huán)嵌套,遍歷每一個元素求和,注意MATLAB中循環(huán)語句的寫法和C語言略有不同~_~文章來源:http://www.zghlxwxcb.cn/news/detail-402432.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-402432.html
到了這里,關(guān)于MATLAB結(jié)構(gòu)化程序設(shè)計的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!