前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >matlab求两向量夹角_MATLAB基础练习(一)

matlab求两向量夹角_MATLAB基础练习(一)

作者头像
全栈程序员站长
发布2022-09-27 10:40:44
6390
发布2022-09-27 10:40:44
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

de13b085d06c1eb17388152b51d0c38e.png
de13b085d06c1eb17388152b51d0c38e.png

1、按要求写出实现该功能的代码

(1)使用方括号“[ ]”操作符产生一个列向量x,内容为1,2,4,7

(2)使用方括号“[ ]”操作符产生一个行向量x,内容为1,2,4,7

(3)使用冒号“:”操作符产生一个行向量x,内容为9,7,5,3,1

(4)使用方括号“[ ]”操作符产生一个二维数组A,第1行为9,4,5,1;第2行为1,0,4,7

7cb83b0e95f8a1b9ae51383b56f56f56.png
7cb83b0e95f8a1b9ae51383b56f56f56.png

(5)使用zeros函数产生一个3*2的二维数组A,使用ones函数产生一个3*4的二维数组B,将A、B拼接成3*6的二维数组C

b42ae9e8b6bc43518bd0fffa463987c6.png
b42ae9e8b6bc43518bd0fffa463987c6.png

(6)使用rand函数产生一个3*4的二维数组A,使用逻辑1标识的方式寻访A矩阵中大于0.3并且小于0.7的所有元素,赋给B

9e40e23203ebdc26dcb29110fa82dcc8.png
9e40e23203ebdc26dcb29110fa82dcc8.png

2、练习矩阵定位函数find的使用

逐句输入并运行以下命令,观察每一步的运行结果,弄明白每一条语句的含义。

clear;

X=[3 2 0; -5 6 1]

indices =find(X>=1) %%语句1

[row,col] =find(X>=1) %%语句2

4d4298f1eabe6ca3fff588d410e14c01.png
4d4298f1eabe6ca3fff588d410e14c01.png

3、练习子矩阵的赋值、删除等操作

已知:A =

1 25 7 20

14 23 6 18

12 23 15 16

20 10 5 9

在MATLAB中给A赋值并完成以下操作:

(1) 给A中第6个元素赋值为100;

命令语句如下:A(6)=100

(2) 给A的第五列赋值[1,2,3,4];

命令语句如下:A(:,end+1)=[1;2;3;4] 或 A(;,5)=[1;2;3;4]

(3) 将矩阵A第2—4行中第1,3,5列元素赋值给矩阵B;

命令语句如下:A(2:4,[1,3,5])

(4) 求矩阵A的大小(行列数);

命令语句如下:size(A)

(5) 将A赋值给矩阵C,删除C的第一行和第三行并显示;

命令语句如下:A([1,3],:)=[]

(6) 将矩阵A重排成5行4列的矩阵(提示:查找reshape函数的帮助)。

命令语句如下:A=reshape(A,5,4)

结果:

A =

1 23 15 9

14 23 5 1

12 10 20 2

20 7 18 3

25 6 16 4

4、练习常用函数的使用:

逐句输入并运行以下命令,观察每一步的运行结果。

(1)

x=[3,2,1,0]

a=length(x)

b=size(x,1)%%行数

c=size(x,2)%%列数

s=sum(x)

(变量a的结果写在此处):4

(变量b的结果写在此处):1

(变量c的结果写在此处):4

(变量s的结果写在此处):6

(2)

x=[3,2,1,0; 5 6 8 7]

b=size(x,1)

c=size(x,2)

d=size(x,3)%%如果维度小于3则返回1

s=sum(x)

s2=sum(x(:))

(变量b的结果写在此处):2

(变量c的结果写在此处):4

(变量d的结果写在此处):1

(变量s的结果写在此处):8 8 9 7

(变量s2的结果写在此处):32

5、按要求编写fun函数:

函数输入参数:一个向量

函数输出参数:该向量中所有大于0的元素的和

功能:求该向量中所有大于0的元素的和

函数调用示例:s=fun([-1, 0, 2, 3, -5, 4])

function [count]=fun(a)

length=size(a(:));

count=0;

for i=1:length

if a(i)>0

count=count+a(i);

end

end

示例结果:

>> s=fun([-1,0,2,3,-5,4])

s =

9

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/179254.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档