希望大家每天做10个matlab习题,写写matlab代码。要相信勤能补拙,熟能生巧。感觉到困难是很正常的,保持不断进步就好。一些问题你现在不理解,以后你会理解的。不要丧失信心。
题目1:交换两个变量的数值
clc;
clear;
%%
a = 1;
b = 2;
a,b %打印a,b的数值
temp = a;
a = b;
b = temp;
a,b %打印a,b的数值
题目2:计算从1到10
clc;
clear;
sumNumber = 0;
for i=1:10
sumNumber = sumNumber + i;
end
sumNumber
题目3:matlab的矩阵广播
a = [1 1;2 2]
b = a+1 %矩阵可以与数字直接相加,为什么?
c = a + [2 3] %第一列+2,第二列+3
题目4:输入两个整数,要求输出其中较大者
a = 100;
b = 99;
max([a b])
题目5:输入一个华氏温度,要求输出摄氏温度。
公式为 c=5(F-32)/9,取位2小数。
a = 16;
f = @(x)5*(x-32)/9; %匿名函数.定义一个函数
disp("温度转换为:")
f(a)
题目6:输入一个华氏温度,要求输出摄氏温度。
公式为 c=5(F-32)/9,取位2小数。
a = 16;
f = @(x)5*(x-32)/9; %匿名函数.定义一个函数
disp("温度转换为:")
f(a)
题目7:有一个函数
y={ x x<1
| 2x-1 1<=x<10
{ 3x-11 x>=10
写一段程序,输入x,输出y
% y={ x x<1
% | 2x-1 1<=x<10
% { 3x-11 x>=10
% 写一段程序,输入x,输出y
% y={ x x<1
% | 2x-1 1<=x<10
% { 3x-11 x>=10
% 写一段程序,输入x,输出y
f1 = @(x)x;
f2 = @(x)2*x-1;
f3 = @(x)3*x-11;
x = 10;
if(x<1)
result = f1(x);
elseif (x >= 1) && (x < 10)
result = f2(x);
elseif (x >= 10)
result = f3(x);
end
result
题目8:给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。
90分以及90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。
x = 51
if x>=90
disp("A");
elseif x>=80
disp("B");
elseif x>=70
disp("C");
elseif x>=60
disp("D");
elseif x>=50
disp("E");
end
题目9:
求以下三数的和:1~a之和 1~b的平方和 1~c的倒数和
clc;
clear;
a = 3;
sumNumber = 0;
sumSquare = 0;
sumReciprocal = 0;
for i=1:a
sumNumber = sumNumber + i;
sumSquare = sumSquare + i^2;
sumReciprocal = sumReciprocal + 1/i;
end
sumNumber
sumSquare
sumReciprocal
题目10:随便输入一个数,计算它是几位数
x = 125506;
length = 0;
while(x~=0)
x = round(x/10);
length = length + 1;
end