h(i,j)=1/(i+j-1); end end
13、求解多项式x3-7x2+2x+40的根。
>> r=[1 -7 2 40]; >> p=roots(r);
14、在区间[0:2π]均匀的取50个点,构成向量π t = linspace(0, 2*pi, 50);
15、编写程序实现f(n)=f(n-1)+f(n-2)(f(1)=1和f(2)=2)函数。
function f=fab(n) if (n==1) f = 1; elseif (n==2) f =2; else
f = fab(n-1) + fab(n-2);
end
1.求四阶魔方矩阵中绝对值大于7、小于10的元素及元素的数目。 答案: b=magic(4);
y=absB.>7&absB.<10; c=length(b(y))
2.设f(X)=x^5-4x^4+3x^2-2x+6
(1)在x=[-2,8]之间取100个点,画出曲线,看它有几个过零点。(提示:用polyval函数)
(2)用roots函数求此多项式的根。 解:(1)
x=linspace(2,8,100); y=polyval([1 0 -4 3 -26],x) plot(x,y,'b',x,0,'y') (2) t=[1 0 -4 3 -2 6]
p=roots(t) 3.求阶乘的累加和 sum=0; temp=1; for n=1:10; temp=temp*n; sum=sum+temp; end sum
4.数曲线,要求写出程序代码 (1)在区间[0:2π]均匀的取50个点,构成向量π (2)在同一窗口绘制曲线y1=sin(2*t-0.3); y2=3cos(t+0.5);要求y1曲线为红色点线;y2为蓝色虚线 解:
(1)t = linspace(0, 2*pi, 50);
(2)y1=sin(2*t-0.3);y2=3*cos(t+0.5);plot(t,y1,'.r' ,t,y2,':b') 5. 编制一个程序,程序的功能将接受用户输入的任何字符串,并将该字符串按升序排列并打印出来。
s=input('请输入字符串:','s') s1=abs(s); s2=sort(s1,2); s3=char(s2);
w=['字符串',s,'按升序排列如下:',s3]; disp(w)
6.建立M文件,在[0 2π]范围内绘制二维曲线图y=sin(x)*cos(5x) 解:
function [ y ] = H( a,b ) x=linspace(a,b); y=sin(x).*cos(5*x);
plot(x,y); end
7. 求解多项式f(x)=x^3-7x^2+2x+40的根。 解:
r=[1 -7 2 40]; p=roots(r); p = 5.0000 4.0000 -2.0000
8.编写程序,求1000至9999之间的回文数.回文数是指正读与反读都一样的数,如1221. 程序:
for i=1000:1000:9999 for j=0:9
n=i+j*100+j*10=i/1000 end end
9.编制一个程序,程序的功能将接受用户输入的任何字符串,要求在查找字符时,不区分大小写。 答案:
s=input('请输入字符串:','s'); t=input('请输入要查找的字符:','s'); s1=lower(s); t1=lower(t); num=strfind(s1,t1); n=length(num);
w=['不区分大小写','字符',t,'在字符串',s,'中出现了',num2str(n),'次'];
disp(w)
10.生成一个7*7的pascal矩阵A,取A的第1,3,5行和5,6,7列位置上的元素构成矩阵B,删除矩阵A的第1,2,3,4行和4,5,6,7列构成矩阵C,求D=B-1*C 解:
A = pascal(7) %生成7*7 pascal矩阵 B = A([1,3,5],[5,6,7]) %C = A(5:7,1:3) %D = B-1*C A =
1 1 1 1 1 1 1 1 2 3 4 5 6 7 1 3 6 10 15 21 28 1 4 10 20 35 56 84 1 5 15 35 70 126 210 1 6 21 56 126 252 462 1 7 28 84 210 462 924 B = 1 1 1 15 21 28 70 126 210 C = 1 5 15 1 6 21 1 7 28 D = 0 -4 -14
构成矩阵B 构成矩阵C 14 15 7 69 119 182
11.有一个4 ×5 矩阵,编程求出其最大值及其所处的位置 A=[4,4,54,65,6;54,2,4,6,6;65,8,98,9,2;43,2435,6,7,657]; %输入矩阵
x=max(A) %求每列最大值 m=max(x) %求最大值
find(A==m) %找位置
12.产生8X6阶的正太分布随机数据R1,求其各列的平均值和均方差。并求该矩阵全体数的平均值和均方差。 (mean var)
U=reshape(a,1,48); P1=mean(u) P2=var(u)
13.建立一个m文件,等待键盘输入,输入密码123,密码正确,显示输入密码正确,程序结束;否则提示,重新输入。 function f=check
password=input(‘Please input the password:\\n’); if(password==123)
Disp(‘输入密码正确’) else
Check; end
14.求下列联立方程的解 3x+4y-7z-12w =4 5x-7y+4z+2w =-3 x+8z–5w =9
-6x+5y -2z+10w =-8