第四讲-程序的设计.pptVIP

  • 1
  • 0
  • 约6.53千字
  • 约 36页
  • 2019-05-06 发布于湖北
  • 举报
、程序设计方法 、应用实例 、实验作业 学习语言中程序设计方法 实验目的 程序控制结构 是一个表达式语言( ),其任何一个语句都可以看成是一个表达式。表达式之间以分号分隔或用换行分隔。表达式可以续行,只要前一行不是完整表达式(比如末尾是加减乘除等运算符,或有未配对的括号)则下一行为上一行的继续。 若干个表达式可以放在一起组成一个复合表达式,作为一个表达式使用。组合用大括号表示,如: { ; ; } [] 语言也提供了其它高级程序语言共有的分支、循环等程序控制结构。 分支结构 (、语言) 语句 分支结构包括结构: (条件) 表达式 或 (条件) 表达式 表达式 其中的“条件”为一个标量的真或假值,表达式可以是用大括号包围的复合表达式。有 子句时一般写成: (条件) { 表达式组…… } { 表达式组……… } 这样的写法可以使不至于脱离前面的。 例如,如果变量为缺失值就给它赋一个缺省值,可用: (()) ; 又比如要计算向量的重对数,这只有在元素都为正且对数都为正时才能做到,因此需要先检查: (() (())) { (()); (()); } { ( \); } 注意“”表示“与”,它是一个短路运算符,即第一个条件为假时就不计算第二个条件。如果不这样此例中计算对数就可以有无效值。 在条件中也可以用“”(两个连续的竖线符号)表示“或”,它也是短路运算符,当第一个条件为真时就不再计算第二个条件。 在用编程序时一定要时刻牢记是一个向量语言,几乎所有操作都是对向量进行的。而中的语句却是一个少见的例外,它的判断条件是标量的真值或假值。比如,我们要定义一个分段函数(),当为正时返回,否则返回,马上可以想到用语句实现如下: () 当是标量时这个定义是有效的,但是当自变量是一个向量时,比较的结果也是一个向量,这时条件无法使用。所以,这个分段函数应该这样编程: (()) [] [] 这句可以省略 对于条件语句是向量形式,提供了()函数,它的使用格式为 (, , ) 它表示,当[]成立的时候,对应的取值为[],否则取值为[]。最终返回一个和参数向量同长的向量 (, , , ); ; (, , ) [] (, , , ) (, ,,) (, , ) [] 若,和不是等长的,则较短的循环使用 有多个语句时与最近的一个配对。可以使用 ... ... ... ...的多重判断结构表示多分支。多分支也可以使用()函数。 ; () { } () { } () { } [] 语句 是多分支语句,其用法为: (, ); 是一个表达式,是列表,也可以用有名定义。根据表达式与的关系返回一个值。如果表达式返回值属于()中的一个,则返回中相应位置的值,否则返回。 (, , (), ()); [] (, , (), ()); [] (, , (), ()); [] (, , (), ()); [] 当是有名定义时,等于变量名时,返回该变量名所对应的值,否则返回 ; (, , , ); [] ; (, , , ); [] 循环结构() 语句 循环结构中常用的是循环,是对一个向量或列表的逐次处理,格式为 ( ) {} 如:求到的和 ; ( ){ ; } ; [] 当然,如果只是要求各元素的和,只要调用()即可。所以,编写程序要精简,应尽量避免使用显式循环。 我们再举一个例子。比如,我们要计算同生日的概率。假设一共有个生日(只考虑月、日),而且各生日的概率是相等的(这里忽略了闰年的情况以及可能存在的出生日期分布的不均匀)。设一个班有个人,当大于时至少两个人生日相同是必然事件。当小于等于时,我们可以计算

文档评论(0)

1亿VIP精品文档

相关文档