第三节简单算法举例 第二章算法 例21求1*2*3*4*5 今设p为被乘数,i为乘数。用自然语言表示算法 如下: S1:使p=1 s2:使2 S3:使p*,乘积仍放在变量p中,可表示为 p→p s4:使值加1,即i1→i s5:如不大于5,返回重新抛行步张S3以及 其后的步骤S4和步骤S5;否则,算法结束。 最后得到的p的值就是5!的值
第二章 算法 6 第三节 简单算法举例 例2.1 求1*2*3*4*5 今设p为被乘数,i为乘数。用自然语言表示算法 如下: S1:使p=1 S2:使i=2 S3:使p*i,乘积仍放在变量p中,可表示为 p*i→p S4:使i的值加1,即 i+1→i S5:如果i不大于5,返回重新执行步骤S3以及 其后的步骤S4和步骤S5;否则,算法结束。 最后得到的p的值就是5!的值
第三节简单算法举例 第二章算法 如果题目改为求1*3*5*7*9*11:算法只须稍做如 下改动即可: S1:使p=1 s2:使i3 s3:使p*,乘积仍放在变量p中,可表示为 p→p s4:使i值加1,即i+2→i s5:如不大于11,返回重新执行步骤S3以 及其后的步骤S4和步骤S5;否则算法结束
第二章 算法 7 第三节 简单算法举例 如果题目改为求1*3*5*7*9*11:算法只须稍做如 下改动即可: S1:使p=1 S2:使i=3 S3:使p*i,乘积仍放在变量p中,可表示为 p*i→p S4:使i的值加1,即 i+2→i S5:如果i不大于11,返回重新执行步骤S3以 及其后的步骤S4和步骤S5;否则算法结束
第三节简单算法举例 第二章算法 例22有50个学生,要求将他们之中成绩在80分 以上者打印出来。用N表示学生学号,N1代表 第一个学生的学号,N代表个学先的学号 用G代表学生成绩,G代表第个学生的成绩。 算法可表示如下 s1:使i=1 S2:如果g≥80,则打印n和g,否则不打印。 s3:i+1-i s4:如50,返回S2,继续执行,否则,算 法结束
第二章 算法 8 第三节 简单算法举例 例2.2 有50个学生,要求将他们之中成绩在80分 以上者打印出来。用N表示学生学号,N1 代表 第一个学生的学号,Ni代表第i个学生的学号。 用G代表学生成绩, Gi代表第i个学生的成绩。 算法可表示如下: S1:使i=1 S2:如果gi≥80,则打印ni和gi,否则不打印。 S3: i+1→i S4:如果i≤50,返回S2,继续执行,否则,算 法结束
第三节简单算法举例 第二章算法 例23判定2000-2500年中的每一年是否闰年, 并将结果输出。 闰年的条件是: ①舶被4整除,但不胎被100整除。如1996年, 2004年; ②能被100磬除,又胎被400警除。如1600年, 2000年。 不符合这两个条件的年份就不是闰年
第二章 算法 9 第三节 简单算法举例 例2.3 判定2000—2500年中的每一年是否闰年, 并将结果输出。 闰年的条件是: ①能被4整除,但不能被100整除。如 1996年, 2004年; ②能被100整除,又能被400整除。如1600年, 2000年。 不符合这两个条件的年份就不是闰年
第三节简单算法举例 第二章算法 算法可表示如下: s1:2000y s2:若y不能被4整除,输出y“不是闰年”。转 S5 S3:若y能被4整除,不能被100整除,则输出 y“是闰年”。然后转s5 s4:若y能被100整除,又能被400整除,则输出 y“是闰年”,否则输出y“不是闰年”。 S5: y+1-y S6:当≤2500时,接S2然续热行,否则,算法 10 结束
第二章 算法 10 第三节 简单算法举例 算法可表示如下: S1:2000→y S2:若y不能被4整除,输出y“不是闰年”。转 S5 S3:若y能被4整除,不能被100整除,则输出 y“是闰年”。然后转S5 S4:若y能被100整除,又能被400整除,则输出 y“是闰年”,否则输出y“不是闰年”。 S5:y+1→y S6:当y≤2500时,转S2继续执行,否则,算法 结束