1、1、每门课程考试阅卷完毕,任课教师都要对各班的考试成绩进行统计,统计内容包括:全班人数,总得分,平均得分,不及格的人数及90分(包括90分)以上的人数.请编制程序解决这一问题,并自给一组数据验证程序的正确性.要求:使用者在提示下通过键盘输入学生成绩,计算机自动处理后,显示需要的结果. 2、根据我国个人所得税计算方法,编制程序,要求:使用者在系统提示下通过键盘输入月工资薪金收入总数,计算机则在屏幕上显示个人所得税额,界面友好,方便使用.个人所得税计算方法:月个人所得税(月工资薪金收入2000)*适用税率速算扣除数附表:个人所得税税率表(工资、薪金所得适用)3、求,中同时满足下列条件的数()该数各
2、位数字之和为奇数()该数是素数4、若一个三位自然数的各位数字的立方和等于该数本身,则称该自然数为水仙花数,例如,153=1+5+3,所以153就是一个水仙花数,编程计算出所有的水仙花数5、任取一个正整数,如果是偶数,用2除,如果是奇数,用3除再加1,反复这个过程,直到所得到的数为1。6、编写程序,从键盘提示输入n个数,将它们按从小到大排列。7、验证“哥德巴赫猜想”,即:任何一个正偶数(大于等于6)均可表示为两个质数的和。要求编写程序,输入一个正偶数,返回两个质数的和。三、 实验过程及结果分析(1) 使用Matlab求解简单问题1.syms x fx= (cos(x0.5)(pi/x)limit
3、(fx,x,0, right)2. syms xy=sym(cos(x2)*(sin(1/x)2dy=diff(y) 3. syms xf=sym(3*x6+12*x5+4*x4+7*x3+8*x+1a=solve(f) 4. syms x x1 y1 min x2 y2 maxf=inline(sin(x)3+(cos(x)3x1,y1=fminbnd(f,pi/6,3*pi/4)min=y1-(sin(x)3-(cos(x)3x2,y2=fminbnd(f,pi/6,3*pi/4)max=-1*y2(2) 使用Matlab绘制下列曲线1. syms t;t=-10:0.1:10;x=2*t
4、.2./(1+t.2.);y=2*t.3./(1+t.2.);plot(x,y) 2. x=-2:0.01:2;f =x.2.*sin(x.2-x-2)df =2*x.*sin(x.2.-x-2)+x.2.*cos(x.2-x-2).*(2*x-1);df2=2*sin(x.2.-x-2)+4*x.*cos(x.2-x-2).*(2*x-1)-x.2.*sin(x.2-x-2).*(2*x-1).2+2*x.2.*cos(x.2-x-2);plot(x,f,k,x,df,b,x,df2,r3. x=0.001:0.0001:0.1;y=1./x.*sin(1./x);plot(x,y)4x=-
5、2:y=x;x,y=meshgrid(x,y);z=x.*exp(-(x.2+y.2);mesh(z);1.a=input(请以数组形式(数据)输入成绩);m,n=size(a);c=0;d=0;s=0;for i=1:n if a(i)=90 d=d+1; end s=s+a(i); A=s/n;endfprintf(全班共%.0f人,不及格%2.0f人,90分上(含90分)%2.0f人,n,c,d)平均%2.3fn分,A) 2.a=input(请输入月薪金总数if a=200 b=0;else a=a-2000; if a=500 b=0.05*a; elseif a80000 b=0.4
6、*a-10375; elseif a100000 b=0.45*a-15375; end end 个人所得税额为%.0f元,b)3. for i=2:999 a=fix(i/100);%百位数 b=fix(i-100*a)/10);%十位数 c=i-100*a-10*b;%个位数 x=a+b+c; gudge=1; for m=2:i/2; if mod(i,m)=0; gudge=0; if gudge=1 & mod(x,2)=0 i 4. for i=100:999; b=mod(i,100); c=mod(i,10); b=(b-c)/10; if a3+b3+c3=i; 5. a=i
7、nput(请以输入一个正整数while a=1; if mod(2,a)=0; a=a/2; else a=a/3+1; fprintf(过程数=%.5f ,a);6. n=input(总共有多少个数n=a=input(请以数组形式数据以空格隔开输入这些数:for i = 1:n; for j = n:-1:i+1; if a(j) a(j - 1) ; temp = a(j - 1); a(j - 1) = a(j); a(j) = temp;a7. n=input(请输入一个偶数:if mod(n,2)=0; disp(哈哈,连奇数偶数都分不清x=0;for i=2: flag=0;i-1
8、; flag=1; if flag=0; x=x+1; a(x)=i;for l=1:x; for q=l: d=a(l)+a(q); if n=d; num1=a(l); num2=a(q);%.f+%.f=%.f,num1,num2,n); return四、 实验总结与体会1、(1)通过使用Matlab,更加便捷的计算出很多复杂的问题,使很多原来手算难以处理的大计算量问题轻松解决。同时,在编程时,它的语法也相对简单明了,很容易就可以把自己所想到的算法转化成可以运行的M文件。(2)很多细节都需要注意,如文件名的选取,在不需要显示的语句后加“;”。细节注意到了,才能保证结果是自己想要的。(3)
9、在编写的过程中,需要根据运行后提示的错误进行修改,唯此才能获得最终正确的程序。而且,可以通过局部逐渐测试来检验程序的正误。(4)Matlab绘图时需将函数转化成相应的矩阵,因为电脑绘制的的是有限个点。(5)Matlab作为一个甚是强大的软件,这学期我们只对它说了一声:“Hello!”,而在掌握了一些基本之后,Matlab中可探索的空间显得愈发广阔。(刘越)2、俗话说“工欲善其事,必先利其器”。在使用Matlab的过程中,我体会到了许多平常难以解决的问题,通过Matlab这款软件,都得以轻松的解决。一方面,Matlab的语言比较简洁明了,初学者可以比较容易入门。另一方面,Matlab在解决一些数学问题上确实很方便实用,让我受益匪浅。总结这几节课的学习,我得到了以下几点心得:(1)多动手写程序;(2)善于利用help;(3)多向老师问不懂的问题或与别人互相交流学习。(陈东升)
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1