Page 99 - 数学建模算法与应用
P. 99

第三章  MATLAB 编程基础


                   例如,在用 MATLAB 语句表示数学式 k1≤x≤k2 时,不能直接写成“k1 =x =
               k2”,而应写成“k1 =x&x =k2”。此外,输入错误也可能导致语法错误。
                   (三)逻辑错误

                   逻辑错误也是编程中常见的一种错误,通常具有很强的隐蔽性,很难发现。
               逻辑错误的原因通常是由于不正确的算法设计,这需要修改算法。
                   (四)运行错误
                   程序的运行错误通常包括不能正常运行和运行结果不正确,出错的原因一般
               有:

                   ■数据不正确,即输入数据不符合算法要求;
                   ■输入矩阵的大小不正确,特别是当输入矩阵是一维数组时,应注意行向量
               和列方向数量使用的差异;

                   ■程序不完整,只能在某些数据上正确运行,而在其他数据上运行不正确,
               或者可能根本无法运行法律运行正常,这可能是由于算法考虑不足。
                   对于简单 MATLAB 程序中出现的语法错误,可以通过运行 M 文件直接进行
               调试。MATLAB 将直接识别语法错误的类型和位置,并根据 MATLAB 的反馈进
               行修改。

                   当 M 文件较大或包含复杂嵌套时,需要使用 MATLAB 调试器调试程序,其
               中包括 MATLAB 提供的大量调试功能和相应的图形工具。用一个确定 2000 年至

               2010 年闰年的示例,介绍 MATLAB 调试器的使用。
                   例 编写一个判断 2000 年至 2010 年间的闰年年份的程序并调试。
                   解 1. 创建一个 leapyear.m 的 M 函数文件,并输入如下函数代码程序。
                   % 程序为判断 2000 年至 2010 年间的闰年年份
                   % 本程序没有输入输出变量

                   % 函数的使用格式为 leapyear
                   % 输出结果为 2000 年至 2010 年间的年份,包括闰年和非闰年
                   function leapyear()
                          for year = 2000:2010

                          sign = 1;
                          a = rem(year, 100);
                          b = rem(year, 4);



                                                                                       89
   94   95   96   97   98   99   100   101   102   103   104