matlab 编程第二章习题,第二章 Matlab 编程基础

Matlab

2.1 2.2 matlab2.3 matlab2.4 I/O

2.1 2.1.1 2.1.2 2.1.3 2.1.4

2.1.1 1.19

2.()()

3. 1NN1MATLABM

4.MATLAB

2.1.2 1. 2. 3.

1.MATLAB1.2.

1X=[1 2 3 4 5 6 7 8 9]x=[123456789]2X=1xx=0101.

3x=x=00.114X=linspace(n)nx=linespace(0,pi,11)5x=logspace(n)nx=logspace(0,1,11)1.0000 1.2589 1.5849 1.9953 2.5119 3.1623 3.9811 5.0119 6.3096 7.9433 10.0000

2. 1A = [1;2;3;4;5;6]2B = (1:6)'

2.1A = [1 2 3;4 5 6;7 8 9]A = [123456789] [ ] A = [1:3;4:6;7:9]

A=

21randx,yxy21ones(n) nn1ones(x,y) xy13zerosnnnzerosx,yxy4eyes(x,y)xy

3.00MATLABMATLAB0MATLAB

MATLAB>> A = eye(5)A = 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1

B = sparse(A)B = (1,1) 1 (2,2) 1 (3,3) 1 (4,4) 1 (5,5) 1>> whos Name Size Bytes Class A 5x5 200 double array B 5x5 84 double array (sparse)Grand total is 30 elements using 284 bytes

eye25200sparseB whosA200B84

()>> A+Bans = 2 0 0 0 0 0 2 0 0 0 0 0 2 0 0 0 0 0 2 0 0 0 0 0 2

MATLABnzmaxnzmaxnzmax

>> data = [15 91 11 3 28 22 6 15]; >> ir = [ 1 5 2 2 6 1 3 1]; >> jc = [1 1 2 3 3 4 4 6];

sparse>> S = sparse(ir,jc,data,6,6)S = (1,1) 15 (5,1) 91 (2,2) 11 (2,3) 3 (6,3) 28 (1,4) 22 (3,4) -6 (1,6) -15

>> %>> full(S)ans = 15 0 0 22 0 -15 0 11 3 0 0 0 0 0 0 -6 0 0 0 0 0 0 0 0 91 0 0 0 0 0 0 0 28 0 0 0

>> whos Name Size Bytes Class S 6x6 124 double array (sparse) ans 6x6 288 double array data 1x8 64 double array ir 1x8 64 double array jc 1x8 64 double arrayGrand total is 68 elements using 604 bytes

2.1.3 1.1 A = [1 2 3 4 5 6 7 8 9 0]MATLAB>> %>> A(3)ans = 3

>> %>> A([1 3 7])ans = 1 3 7>> %>> A([1,3,5])ans = 1 3 5>> %>> A([end-3:end])ans = 7 8 9 0>> %>> A([1:5,5: -1:1])ans = 1 2 3 4 5 5 4 3 2 1

1end1end

2 A = [1 2 3 4 5 6 7 8 9 0]MATLAB>> %>> A(3) = -3A = 1 2 -3 4 5 6 7 8 9 0>> %>> A(15) = -15A = Columns 1 through 10 1 2 -3 4 5 6 7 8 9 0 Columns 11 through 15 0 0 0 0 -15

21511~150MATLAB

2.3 MATLAB55MATLAB

>> %>> A = magic(5)A = 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 >> %>> A(2,4)ans = 14>> %>> A(17)ans = 14

MATLABmagicn mijl=(j-1)m+i MATLABFORTRANCC

A(i,j)

Aijij

A(I,J)

IJA

A(i,:)

Ai

A(:,j)

Aj

A(:)

A

A(l)

l

A(L)

LAL

4 MATLAB>> % >> A = 1:25;>> A = reshape(A,5,5)A = 1 6 11 16 21 2 7 12 17 22 3 8 13 18 23 4 9 14 19 24 5 10 15 20 25

>> %>> A(3,1)A(3)ans = 3>> % >> A(3,:)ans = 3 8 13 18 23>> %>> A(:,4)ans = 16 17 18 19 20

>> %>> A(end,:)ans = 5 10 15 20 25>> %>> I = [1 3 5];J = [2 4];>> A(I,J)ans = 6 16 8 18 10 20

2.1.4 /

1X=461xAA=[x-3;x;x+3]A =1 2 34 5 67 8 9 2ABB=A[3:-1:1,1:3]B =7 8 94 5 61 2 3

3ACC=A[1:2,end-1:end](C=A[1:2,2:3])C= 2 35 64CDD=C:D=2536

5B2B(:,2)=[]B=7 94 61 36B220(2,2)=0B=7 94 01 3

7B3B(3)ans=18A3310abs(A)>3ans=0 0 01 1 11 1 1

9A4[r,s]=find(A>4)r=32323s=12233

(10)S=size(A),ssAA[r,c]=size(A),rcAr=size(A,1),Arc=size(A,2)Acn=length(A)

2.2 Matlab2.2.1 2.2.2

2.2.1 1. 2. 3. 4.

1.

diag(A)Adiag(v)vflipud(A)fliplr(A)rot90(A)90reshape(A,m,n)mnAAmntril(A)Atriu(A)A

2.

zeros

0

ones

1

eye

rand

(0,1)

randn

01

diag

tril

triu

pascal

magic

size

length

ndims

numel

disp

()

cat

reshape

repmat

fliplr

flipud

flipdim

find

3.

++.**.//.\\.^^

A=eye(2)B=[1,2;3,4]A+BA.*BA*BA./BA/BB.^2B^2A=1 00 1B= A./B1 2 ans=3 4 1.0000 0 0 0.2500A+B A/Bans= ans=2 2 -2.0000 1.00003 5 1.5000 -0.5000A.*B B.^2ans= ans=1 0 1 40 4 9 16A*Bans=1 23 4

A'

A^n

n

A*B

A/B

A\B

A+B

AB

inv

det

rank

eig

svd

Norm

4.

sin

tanh

csch

sinh

atan

acsc

asin

atan2

acsch

asinh

atanh

cot

cos

sec

coth

cosh

sech

acot

acos

asec

acoth

acosh

asech

tan

csc

exp

realpow

log

reallog

log10

realsqrt

log2

2

sqrt

pow2

2

nextpow2

2

fix

0

mod

floor

rem

ceil

sign

round

MATLAB>> %>> A = pascal(3)A = 1 1 1 1 2 3 1 3 6>> %A>> tril(A)ans = 1 0 0 1 2 0 1 3 6

>> %A>> diag(A)ans = 1 2 6>> %>> diag(ans)ans = 1 0 0 0 2 0 0 0 6

MATLABMATLAB>> fix(-1.9)ans = -1>> floor(-1.9)ans = -2>> round(-1.9)ans = -2>> ceil(-1.9)ans = -1

reshape 2-11reshapeMATLAB>> A = 1:8A = 1 2 3 4 5 6 7 8>> B = reshape(A,2,4)B = 1 3 5 7 2 4 6 8>> C = reshape(B,3,3)??? Error using ==> reshapeTo RESHAPE the number of elements must not change.

MATLAB>> A = reshape(1:9,3,3)A = 1 4 7 2 5 8 3 6 9>> fliplr(A)ans = 7 4 1 8 5 2 9 6 3

>> flipud(A)ans = 3 6 9 2 5 8 1 4 7>> flipdim(A,1)ans = 3 6 9 2 5 8 1 4 7>> flipdim(A,2)ans = 7 4 1 8 5 2 9 6 3

MATLAB>> A = reshape(1:9,3,3);>> B = [1 2 ; 3 4];>> O = zeros(length(A),length(B))O = 0 0 0 0 0 0>> C = [ A O; O' B]C = 1 4 7 0 0 2 5 8 0 0 3 6 9 0 0 0 0 0 1 2 0 0 0 3 4 AB

MATLAB>> A = [1 2 ; 3 4];>> B = [ A , A*2 ; tril(A) , triu(A) ; A*3 , A*4]B = 1 2 2 4 3 4 6 8 1 0 1 2 3 4 0 4 3 6 4 8 9 12 12 16

repmat>> repmat(magic(2),2,3)ans = 1 3 1 3 1 3 4 2 4 2 4 2 1 3 1 3 1 3 4 2 4 2 4 2repmatrepmat(A,M,N)A

2.2.2

1.

&&

||

&

|

~

xor

any

all

&&||a && b && c && dabcda

1MATLAB>> a = eye(3);>> b = a;b(3,1) =1;>> a && b ??? Operands to the || and && operators must be convertible to logical scalar values. >> a & b

ans = 1 0 0 0 1 0 0 0 1>> whos Name Size Bytes Class a 3x3 72 double arr

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值