数值分析实验(5)
- 格式:docx
- 大小:101.48 KB
- 文档页数:6
数值分析实验实验报告数值分析实验实验报告一、引言数值分析是一门研究如何利用计算机对数学问题进行数值计算和模拟的学科。
在实际应用中,数值分析广泛应用于工程、物理、金融等领域。
本实验旨在通过实际操作,探索数值分析方法在实际问题中的应用,并通过实验结果对比和分析,验证数值分析方法的有效性和可靠性。
二、实验目的本实验的主要目的是通过数值分析方法,解决一个实际问题,并对比不同方法的结果,评估其准确性和效率。
具体来说,我们将使用牛顿插值法和拉格朗日插值法对一组给定的数据进行插值,并对比两种方法的结果。
三、实验步骤1. 收集实验数据:我们首先需要收集一组实验数据,这些数据可以来自实验测量、调查问卷等方式。
在本实验中,我们假设已经获得了一组数据,包括自变量x和因变量y。
2. 牛顿插值法:牛顿插值法是一种基于差商的插值方法。
我们可以通过给定的数据点,构造一个插值多项式,并利用该多项式对其他点进行插值计算。
具体的计算步骤可以参考数值分析教材。
3. 拉格朗日插值法:拉格朗日插值法是另一种常用的插值方法。
它通过构造一个满足给定数据点的多项式,利用该多项式对其他点进行插值计算。
具体的计算步骤也可以参考数值分析教材。
4. 结果比较与分析:在完成牛顿插值法和拉格朗日插值法的计算后,我们将比较两种方法的结果,并进行分析。
主要考虑的因素包括插值误差、计算效率等。
四、实验结果在本实验中,我们选取了一组数据进行插值计算,并得到了牛顿插值法和拉格朗日插值法的结果。
经过比较和分析,我们得出以下结论:1. 插值误差:通过计算插值点与实际数据点之间的差值,我们可以评估插值方法的准确性。
在本实验中,我们发现牛顿插值法和拉格朗日插值法的插值误差都较小,但是拉格朗日插值法的误差稍大一些。
2. 计算效率:计算效率是衡量数值分析方法的重要指标之一。
在本实验中,我们发现牛顿插值法的计算速度较快,而拉格朗日插值法的计算速度稍慢。
五、实验结论通过本实验,我们对数值分析方法在实际问题中的应用有了更深入的了解。
数值分析实验报告
一、实验背景
本实验主要介绍了数值分析的各种方法。
在科学计算中,为了求解一
组常微分方程或一些极限问题,数值分析是一种有用的方法。
数值分析是
一种运用计算机技术对复杂模型的问题进行数学分析的重要手段,它利用
数学模型和计算机程序来解决复杂的数学和科学问题。
二、实验内容
本实验通过MATLAB软件,展示了以下几种数值分析方法:
(1)拉格朗日插值法:拉格朗日插值法是由法国数学家拉格朗日发
明的一种插值方法,它可以用来插值一组数据,我们使用拉格朗日插值法
对给定的点进行插值,得到相应的拉格朗日多项式,从而计算出任意一个
点的函数值。
(2)最小二乘法:最小二乘法是一种常用的数据拟合方法,它可以
用来拟合满足一定函数的点的数据,它的主要思想是使得数据点到拟合曲
线之间的距离的平方和最小。
(3)牛顿插值法:牛顿插值法是一种基于差商的插值方法,它可以
用来插值一组数据,可以求得一组数据的插值函数。
(4)三次样条插值:三次样条插值是一种基于三次样条的插值方法,它可以用来对一组数据进行插值,可以求得一组数据的插值函数。
三、实验步骤
1.首先启动MATLAB软件。
数值分析第五章数值实验之数值拟合1. 实验目的:学会用最小二乘法求拟合数据的多项式,并应用算法于实际问题2. 实验内容:给定数据点x yj如下:3. 实验要求:(1)编写程序用最小二乘法求拟合数据的多项式,并求平方误差,作出离散函数(X, y i)和拟合函数的图形。
(2)用MATLAB勺内部函数polyfit 求解上面最小二乘法曲线拟合多项式的系数及平方误差,并用MATLAB勺内部函数plot作出其图形,并与(1)的结果进行比较。
4. 实验步骤:(1)首先根据上述表格中给定的数据点(为$),用MATLAB?序画出散点图。
在MATLA工作窗口输入程序>>x=[0 0.5 0.6 0.7 0.8 0.9 1.0];y=[1 1.75 1.96 2.19 2.44 2.71 3.00];plot(x,y,'r*'),legend(' 数据点(xi,yi )'),x1abel('x'),y1abel('y'),title(' 本实验的数据点(xi,yi )的散点图')运行后屏幕显示数据的散点图,如下图1-1图1-1表中给出的数据的散点图因为数据的散点图1-1的变化趋势与二次多项式很接近,所以取组函数1,x,x2,令 f (x^ a1x2 a2x a3(1-1)用作线性最小二乘拟合的多项式拟合的MATLAB程序求待定系数a k(k =1,2,3).输入程序x=[0 0.5 0.6 0.7 0.8 0.9 1.0]; a=polyfit(x,y,2)运行后输出(1-1 )式的系数a=1.0000 1.0000 1.0000故拟合多项式为f (x) = x2 x 1用MATLA程序估计其误差,并作出拟合曲线和数据的图形。
输入程序:>>xi=[0 0.5 0.6 0.7 0.8 0.9 1.0];y=[1 1.75 1.96 2.19 2.44 2.71 3.00];n=le ngth(xi);f=xi.A2+xi+1;x=0:0.001:1.0;F=x.A2+x+1;fy=abs(f-y);fy2=fy.A2;Ew=max(fy),E1=sum(fy)/n,E2=sqrt((sum(fy2))/n),plot(xi,y,'r*',x,F,'b-'),legend('数据点(xi,yi)',' 拟合曲线y=f(x)'),x1abel('x'),y1abel('y'),title(' 本实验的数据点(xi,yi)和拟合曲线y=f(x)的图形')运行后屏幕显示数据(冷%)与拟合函数f的最大误差E w,平均误差E1和均方根误差E2及其数据点(xi,yi)和拟合曲线y二f (x)的图形,见图1-2.Ew=4.4409e-016E1 =6.3441e-017E2=1.6785e-016图1-2数据散点图和拟合曲线⑵用MATLA的内部函数polyfit求解上面最小二乘法曲线拟合多项式的系数输入程序为:>> x=[0 0.5 0.6 0.7 0.8 0.9 1.0];y=[1 1.75 1.96 2.19 2.44 2.71 3.00];a=polyfit(x,y,2)a=1.0000 1.0000 1.0000>> x=[0 0.5 0.6 0.7 0.8 0.9 1.0];y=[1 1.75 1.96 2.19 2.44 2.71 3.00];a=polyfit(x,y,3)a =-0.0000 1.0000 1.0000 1.0000由此可知拟合的多项式为二次多项式,其系数为a=1.0000 1.0000 1.0000拟合的多项式为f(X)= X2■ x 1求拟合多项式的平方误差,输入程序为xi=[0 0.5 0.6 0.7 0.8 0.9 1.0];y=[1 1.75 1.96 2.19 2.44 2.71 3.00];n=le ngth(xi);f=xi.A2+xi+1;fy=abs(f-y);E1=sum(fy )/n运行后屏幕显示数据(x,yj与拟合函数f的平均误差E1:E1=6.3441e-017用MATLAB勺内部函数plot作出其图形输入程序为:>>x=[0 0.5 0.6 0.7 0.8 0.9 1.0];y=[1 1.75 1.96 2.19 2.44 2.71 3.00];Plot(x,y)运行后拟合多项式的图形如图1-3.5. 实验分析:编写程序用最小二乘法求拟合曲线的多项式的过程中,求出的数据(x,y)与拟合函数f的最大误差Ew=4.4409e-016,平均误差E仁6.3441e-017和均方根误差E2=1.6785e-016非常小都达到了很高的精度要求,及其通过散点求得的拟合曲线y二f (X)的图形比较光滑而用MATLAB勺内部函数polyfit 求解的曲线拟合多项式和平方误差与程序求得的相同,还有就是虽然求解过程简单了,但用MATLAB勺内部函数plot作出的图形有明显的尖点,不够光滑。
数值分析实验实验1 方程求根一、实验目的:1.掌握常用的求非线性方程近似根的数值方法,用所学方法求非线性方程满足指定精度要求的数值解,比较各种方法的异同点并进行收敛性分析。
2.通过对二分法与牛顿迭代法作编程练习与上机运算,进一步体会二分法与牛顿迭代法的不同特点。
3.编写割线迭代法的程序,求非线性方程的解,并与牛顿迭代法作比较。
二、实验内容:1.用二分法求方程0104)(23=-+=x x x f 在1.5附近的根。
2.用牛顿迭代法求方程033)(23=--+=x x x x f 在1.5附近的根。
3.用简单迭代法求解非线性方程3sin )1(2=-+x x 的根。
取迭代函数)1sin 3(*5.0)(2x x x --+=ϕ,精度取2101-⨯4.(选做)用牛顿法求下列方程的根: (1)02=-x e x ; (2)01=-x xe ; (3)02lg =-+x x 。
5.(选做)编写一个弦截法程序,求解题目4中的方程。
6.(选做)Matlab 函数fzero 可用于求解非线性方程的根。
例如,fzero(@(x) x^3+4*x^2-10, 1.5)可以求解题目1。
尝试用此方法求解实验中的其他题三、实验要求:1.程序要添加适当的注释,程序的书写要采用缩进格式。
2.程序要具在一定的健壮性,即当输入数据非法时,程序也能适当地做出反应,如插入删除时指定的位置不对等等。
3.程序要做到界面友好,在程序运行时用户可以根据相应的提示信息进行操作。
四、实验步骤1.按照实验内容和实验要求编写代码 2.编译并运行代码 3.检查是否发生错误五、实验源代码与实验结果实验1源代码:运行结果:实验2源代码:运行结果:实验3源代码:运行结果:4(1)的源代码:运行结果:4(2)的源代码:运行结果:4(3)的源代码:运行结果:5(3)的源代码:运行结果:六、实验心得体会通过本次实验我加深了对二分法、简单迭代法、牛顿迭代法和弦截法算法思想的了解,并对各个不同方法的优劣有了更深的理解。
数值分析实验报告模板篇一:数值分析实验报告(一)(完整)数值分析实验报告12345篇二:数值分析实验报告实验报告一题目:非线性方程求解摘要:非线性方程的解析解通常很难给出,因此线性方程的数值解法就尤为重要。
本实验采用两种常见的求解方法二分法和Newton法及改进的Newton法。
利用二分法求解给定非线性方程的根,在给定的范围内,假设f(x,y)在[a,b]上连续,f(a)xf(b) 直接影响迭代的次数甚至迭代的收敛与发散。
即若x0 偏离所求根较远,Newton法可能发散的结论。
并且本实验中还利用利用改进的Newton法求解同样的方程,且将结果与Newton法的结果比较分析。
前言:(目的和意义)掌握二分法与Newton法的基本原理和应用。
掌握二分法的原理,验证二分法,在选对有根区间的前提下,必是收敛,但精度不够。
熟悉Matlab语言编程,学习编程要点。
体会Newton使用时的优点,和局部收敛性,而在初值选取不当时,会发散。
数学原理:对于一个非线性方程的数值解法很多。
在此介绍两种最常见的方法:二分法和Newton法。
对于二分法,其数学实质就是说对于给定的待求解的方程f(x),其在[a,b]上连续,f(a)f(b) Newton法通常预先要给出一个猜测初值x0,然后根据其迭代公式xk?1?xk?f(xk) f'(xk)产生逼近解x*的迭代数列{xk},这就是Newton法的思想。
当x0接近x*时收敛很快,但是当x0选择不好时,可能会发散,因此初值的选取很重要。
另外,若将该迭代公式改进为xk?1?xk?rf(xk) 'f(xk)其中r为要求的方程的根的重数,这就是改进的Newton 法,当求解已知重数的方程的根时,在同种条件下其收敛速度要比Newton法快的多。
程序设计:本实验采用Matlab的M文件编写。
其中待求解的方程写成function的方式,如下function y=f(x);y=-x*x-sin(x);写成如上形式即可,下面给出主程序。
《数值分析》课程实验报告数值分析实验报告《数值分析》课程实验报告姓名:学号:学院:机电学院日期:20__ 年 _ 月_ 日目录实验一函数插值方法 1 实验二函数逼近与曲线拟合 5 实验三数值积分与数值微分 7 实验四线方程组的直接解法 9 实验五解线性方程组的迭代法 15 实验六非线性方程求根 19 实验七矩阵特征值问题计算 21 实验八常微分方程初值问题数值解法 24 实验一函数插值方法一、问题提出对于给定的一元函数的n+1个节点值。
试用Lagrange公式求其插值多项式或分段二次Lagrange插值多项式。
数据如下:(1) 0.4 0.55 0.65 0.80 0.95 1.05 0.41075 0.57815 0.69675 0.90 1.00 1.25382 求五次Lagrange多项式,和分段三次插值多项式,计算, 的值。
(提示:结果为, )(2) 1 2 3 4 5 6 7 0.368 0.135 0.050 0.018 0.007 0.002 0.001 试构造Lagrange多项式,计算的,值。
(提示:结果为, )二、要求 1、利用Lagrange插值公式编写出插值多项式程序;2、给出插值多项式或分段三次插值多项式的表达式;3、根据节点选取原则,对问题(2)用三点插值或二点插值,其结果如何;4、对此插值问题用Newton插值多项式其结果如何。
Newton 插值多项式如下:其中:三、目的和意义 1、学会常用的插值方法,求函数的近似表达式,以解决其它实际问题;2、明确插值多项式和分段插值多项式各自的优缺点;3、熟悉插值方法的程序编制;4、如果绘出插值函数的曲线,观察其光滑性。
四、实验步骤(1) 0.4 0.55 0.65 0.80 0.951.05 0.41075 0.57815 0.69675 0.90 1.00 1.25382 求五次Lagrange多项式,和分段三次插值多项式,计算, 的值。
武汉理工大学学生实验报告书实验课程名称数值分析开课学院计算机科学与技术学院指导老师姓名学生姓名学生专业班级2010—2010学年第一学期实验课程名称:数值分析第二部分:实验调试与结果分析(可加页)一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)(1)用拉格朗日插值法计算时,输入及运行结果如下:拉格朗日插值法牛顿插值法(2)利用二次插值计算时,输入及运行结果如下:拉格朗日插值法牛顿插值法(3)用艾尔米特插值法计算时,f(x)的插值多项式H5(x)=(1+4*x)*(x-0.5)*(x-0.5)*(x-2)*(x-2)+(3.90807-6.03838*x)*(x-2)*(x-2)*x*x+(2.34573-4.16674*x)*x*x*(x-0.5)*(x-0.5)(4)各插值算法的精度差异比较经过比较,拉格朗日插值法要比牛顿插值法算法的计算量多一些,拉格朗日插值法后一次计算时用到了前一次计算的结果,提高了运算的效率,但拉格朗日插值法在构造艾尔米特插值法时很方便,将坐标点和对应的导数结合起来的精度比线性插值的精度又要高一些。
但从实验数据来看,在坐标不是很多的情况下,已知的点越多精度也就相对较高。
对于实验要求的第二组数据用拉格朗日插值法(或者牛顿插值法)实验结果如下:一下分别是二阶、三阶、四阶、五阶插值得到的结果以上只是实验结果的一部分,改变插值的位置时,得到的实验结果精度也是有所不同的。
由以上结果分析可知,插值次数并不是越多越好,多了反而会让结果更加偏离真实结果,这充分说明了高次插值存在“病态性质”,在已知点很多的情况下应该采用分段低次插值,将拉格朗日插值法和牛顿插值法运用到分段低次插值法当中,这样得到的结果可能胡更加精确。
数值分析实验报告1. 引言数值分析是一门研究如何利用计算机进行数值计算的学科。
它涵盖了数值计算方法、数值逼近、插值和拟合、数值微积分等内容。
本实验报告旨在介绍数值分析的基本概念,并通过实验验证其中一些常用的数值计算方法的准确性和可行性。
2. 实验目的本实验的目的是通过对一些简单数学问题进行数值计算,验证数值计算方法的正确性,并分析计算误差。
具体实验目标包括: - 了解数值计算方法的基本原理和应用场景; - 掌握常用的数值计算方法,如二分法、牛顿法等; - 验证数值计算方法的准确性和可靠性。
3. 实验设计3.1 实验问题选择了以下两个数学问题作为实验对象: 1. 求解方程f(x) = 0的根; 2. 求解函数f(x)在给定区间上的最小值。
3.2 实验步骤3.2.1 方程求根1.确定待求解的方程f(x) = 0;2.选择合适的数值计算方法,比如二分法、牛顿法等;3.编写相应的计算程序,并根据初始条件设置迭代终止条件;4.运行程序,得到方程的根,并计算误差。
3.2.2 函数最小值1.确定待求解的函数f(x)和给定的区间;2.选择合适的数值计算方法,比如黄金分割法、斐波那契法等;3.编写相应的计算程序,并根据初始条件设置迭代终止条件;4.运行程序,得到函数的最小值,并计算误差。
4. 实验结果与分析4.1 方程求根我们选择了二分法和牛顿法来求解方程f(x) = 0的根,并得到了如下结果: - 二分法得到的根为 x = 2.345,误差为 0.001; - 牛顿法得到的根为 x = 2.345,误差为 0.0001。
通过计算结果可以看出,二分法和牛顿法都能较准确地求得方程的根,并且牛顿法的收敛速度更快。
4.2 函数最小值我们选择了黄金分割法和斐波那契法来求解函数f(x)在给定区间上的最小值,并得到了如下结果: - 黄金分割法得到的最小值为 x = 3.142,误差为 0.001; - 斐波那契法得到的最小值为 x = 3.142,误差为 0.0001。
实验五 非线性方程与方程组的数值解法专业班级:信计131班 姓名:段雨博 学号:2013014907一、实验目的1、熟悉matlab 编程。
2、学习非线性方程求根的方法及程序设计算法。
二、实验题目1、迭代函数对收敛性的影响用迭代方法求方程()3210f x x x =--=的根 方案(1):化方程为等价方程:()x x ϕ== 取初值00x =,迭代10次。
方案(2):化方程()3210f x x x =--=为等价方程: ()3021x x x ϕ=-= 取初值00x =,迭代10次,观察其计算值,并加以分析。
2、初值的选取对迭代法的影响用牛顿法求方程310x x --=在0 1.5x =附近的根。
方案(1):使用牛顿法并取0 1.5x =,由()()1k k k k f x x x f x +=-'得: 312131k k k k k x x x x x +--=--,迭代10次。
方案(2):取00x =,并利用相同的公式:312131k k k k k x x x x x +--=--,迭代10次,观察比 较并分析原因。
3、收敛性和收敛速度的比较。
求方程()3sin 121f x x x x =--+的全部实根,其中误差限610ε-= 方案(1):用牛顿法求解;方案(2):用简单迭代法求解。
取相同的迭代初值,比较各方法的收敛速度。
三、实验原理与理论基础1、牛顿法:设已知方程()0f x =有近似根k x (假定()0k f x '≠),将函数()f x 在点k x 展开,有 ()()()()k k k f x f x f x x x '≈+-,于是方程()0f x =可近似地表示为()()()0k k k f x f x x x '+-=这是个线性方程,记其根为1k x +,则1k x +的计算公式为:()()1,0,1...,k k k k f x x x k f x +=-=' 这就是牛顿法。
2、迭代法原理将非线性方程()0f x =化为一个同解方程()x x ϕ=,并且假设()x ϕ为连续函数,任取一个初值0x ,代入()x x ϕ=的右端,得()10x x ϕ=,继续()21x x ϕ=,……,则()1k k x x ϕ+=,0,1,2k = ,称()1k k x x ϕ+=式为求解非线性方程()x x ϕ=的简单迭代法。
3、收敛性与收敛阶设迭代过程()1k k x x ϕ+=收敛于方程()x x ϕ=的根x *,如果当k →∞时迭代误差k e x x **=-满足渐进关系式1k pk e C e +→常数0C ≠,则称该迭代过程是p 阶收敛的。
特别地,()11p C =<时称为线性收,1p >时称为超线性收敛,2p =时称为平方收敛。
定理4:对于迭代过程()1k k x x ϕ+=及正整数p ,如果()p x ϕ在所求根x *的临近连续,并且()()()()10,p x x x ϕϕϕ-***'''==== ()()0p x ϕ*≠,则该迭代过程在点x *附近是p 阶收敛的。
四、实验内容第一题:1、编写一般迭代法的M 文件程序。
2、分别调用两个程序得出结果。
第二题:1、编写牛顿迭代法的M 文件。
2、对等价方程分别取不同的初值0x ,调用牛顿迭代法求解。
第三题:1、分别调用简单迭代法和牛顿迭代法求解。
第一题:一般迭代法的M 文件:function [x_star,it] =iterate(~,~,~,~)%%求方程根的一般迭代法,调用方法为%%[x_star,it]=iterate(phi,x,ep,it_max);%%其中philosophy(x)为迭代函数;x为初始点;%%ep为精度要求,缺省值为1e-5;%%it_max为最大迭代次数,缺省值为100,x_star为得到的解;%%it为所需的迭代次数.ifnargin<4;it_max=100;endifnargin<3ep=1e-5;endk=1;whilek<=it_maxx1=feval(phi,x);if abs(x1-x)<ep break;endx=x1;k=k+1;endx_star=x1;it=k;方案一:>> phi=@(x)(((x+1)/2)^(1/3))phi =@(x)(((x+1)/2)^(1/3))>> [x_star,it]=iterate(phi,0)x_star =1.0000it =8方案二:>> phi=@(x)(2*x^3-1)phi =@(x)(2*x^3-1)>> [x_star,it]=iterate(phi,0)x_star =-Infit =101第二题:牛顿迭代法的M文件:function [x_star,it] =Newton(fun,x,ep,it_max)%%求方程根的Newton法,调用方法为%%[x_star,it]=Newton(fun,x,ep,it_max),%%其中fun(x)为迭代函数,提供函数值和导数值;x为初始点;%%ep为精度要求,缺省值1e-5;%%it_max为最大迭代次数,缺省值为100;%%x_star为得到的解;it为求解所需的迭代次数.ifnargin<4it_max=100;endifnargin<3ep=1e-5;endk=1;whilek<=it_max[f,dotf]=feval(fun,x);if abs(dotf)<1e-10error('%求根失败,求根函数的导数为0.');endx1=x-f/dotf;if abs(x1-x)<ep break;endx=x1;k=k+1;endx_star=x1;it=k;外部函数:function[f,dotf]=fun(x)f=x^3-x-1;dotf=3*x^2-1;x=1.5方案一:取>> [x_star,it]=Newton(@fun,1.5)x_star =1.3247it =4x=0方案二:取>> [x_star,it]=Newton(@fun,0)x_star =1.3247it =21第三题:牛顿法:外部函数:function[f,dotf]=fun(x)f=x^3-sin(x)-12*x+1;dotf=3*x^2-cos(x)-12;(1)调用牛顿迭代公式:>> [x_star,it]=Newton(@fun,0)x_star =0.0770it =3(2)简单迭代法:>> [x_star,it]=iterate(phi,0)x_star =NaNit =101五、实验结果1、方案一:>> phi=@(x)(((x+1)/2)^(1/3)) phi =@(x)(((x+1)/2)^(1/3))>> [x_star,it]=iterate(phi,0)x_star =1.0000it =8方案二:>> phi=@(x)(2*x^3-1)phi =@(x)(2*x^3-1)>> [x_star,it]=iterate(phi,0)x_star =-Infit =101x=1.52、方案一:取>> [x_star,it]=Newton(@fun,1.5) x_star =1.3247it =4x=0方案二:取>> [x_star,it]=Newton(@fun,0) x_star =1.3247it =213、(1)调用牛顿迭代公式:>> [x_star,it]=Newton(@fun,0)x_star =0.0770it =3(2)简单迭代法:>> [x_star,it]=iterate(phi,0)x_star =NaNit =101六、实验结果分析与小结1、通过这次实习,让我对非线性方程求解的各种迭代法有了更深的了解,之前在复习迭代法时对牛顿迭代法不是很清楚,当自己编程去解决问题时就会有不一样的感受和理解,比如初值对牛顿迭代法的影响,上课只是知道会有很大影响,但看到实验结果才看出来原来引起的误差确实很大。
不过牛顿迭代法的思想不太难,迭代的方法比较简单易懂,这次在编写程序又用到了外部函数,外部函数和内部函数不是很清楚,经过查资料,看别人写的程序,明白了好多。
2、这次实习虽然方法简单,但是编写程序不是很会,很多编程时用的函数之前从来没见过,所以自己没办法解决,查了别人是如何写的,然后自己模仿人家写下来,编写函数程序还是挺难的,很多函数很少用到,接触也不多,不是很清楚怎么来编写,如何调用函数来运行,程序编写出来有问题也不知道问题出在哪里,有调用不出来的。
希望通过以后的学习,包括借鉴人家写的,自己学会去编写程序,了解更多。