电子科大matlab与数值分析第一次上机实践报告

更新时间:2023-11-26 10:50:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Matlab上机实践报告

实践内容:MATLAB软件操作及程序设计

学院:

姓名:

学号:

指导老师:

实践日期:

题目(一)

编程实现以下数列的图像,用户能输入不同的初始值以及系数。并以x,y为坐标显示图像

x(n+1) = a*x(n)-b*(y(n)-x(n)^2); y(n+1) = b*x(n)+a*(y(n)-x(n)^2)

题目分析:此题要求是让我们编一个m程序,并且能够实现不同初值和系数画出图像。这道题的重点有两个,一个是用循环生成两个数列,一个是做出图像。对于生成数列,我采用for循环,而画出图像,由于x(n)和y(n)是离散的,我采用的是画出一些列点,故用scatter(x,y)函数。 试题答案:

function huatu(x1,y1,a,b,N) %获得变量N表示数列长度 %函数huatu(x1,y1,a,b,N)绘制一些列点

%参数x1,y1为两个数列的初值,a,b位系数,N为数列长度 x(1)=x1;y(1)=y1;

for n=1:(N-1) %循环实现递归算出数列 x(n+1) = a*x(n)-b*(y(n)-x(n)^2); y(n+1) = b*x(n)+a*(y(n)-x(n)^2); end

scatter(x,y,'.','r') %描点法画出图像,图像是一系列点,但有时因为数

据% 问题点不是很明显

题目(二)

2. 编程实现奥运5环图,允许用户输入环的直径。 题目分析:

本题又是一个作图题,重点是如何处理任意半径的问题、图形颜色和保持五个图形。针对本题,我把圆心坐标设置为和半径有关的量,用循环画五个图形,并用hold on保持图形,而且用axis equal 保持横纵坐标等距。 题目答案:

function f=wusehuan(r)

%函数wusehuan(r)能够绘制给定参数的奥运五环 t=0:.01:2*pi; %生成一系列角度

a=[-2.4*r,0,2.4*r,-1.2*r,1.2*r]; %确定五个横坐标 b=[0,0,0,-r,-r]; %确定五个纵坐标 color=['b','k','r','y','g']; %确定五种颜色

for n=1:5 %循环话五个正园 x=r*cos(t)+a(n); y=r*sin(t)+b(n); plot(x,y,color(n))

hold on %保持画过的园不被覆盖 axis equal %保正横纵等距

3. 实现对输入任意长度向量元素的冒泡排序的升序排列。不允许使用sort函数。 题目分析:

本题重点是设计算法和适用于任意长度的数列。针对本题,我采用双重循环来实现冒泡排序,用length函数来量数组长度。 题目答案:

function f=paixu(x)

%函数paixu(x)用冒泡排序实现排序 y=x;

N=length(y); %获得数组长度

for n=1:(N-1) %双重循环实现冒泡排序 for m=1:(N-n) if y(m)>y(m+1)

t=y(m+1);y(m+1)=y(m);y(m)=t; end end end y

心得体会

通过这次上机实验,我对matlab的绘图及程序设计又加深了理解,对matlab的强大功能又有了进一步的了解。也在本次实验中,有熟悉了matlab的各种操作。

其中,通过第一道题和第二道题,我又熟悉了一些绘图函数如scatter(x,y)和plot(x,y)并熟悉了颜色绘图形式等参数的设置。这三道题都用到了循环,我均用到了for循环。除此之外,我还在这几道题中温习了一些基本函数,如length()等。

本文来源:https://www.bwwdw.com/article/oant.html

Top