admin 管理员组文章数量: 888526
青少年信息学计算机,青少年信息学(计算机)竞赛:程序设计的基本方法
合肥奥数网讯:
一、模块化:
(1) 把一个较大的程序划分为若干子程序,每一个子程序解决一个总是独立成为一个模块;
(2) 每一个模块又可继续划分为更小的子模块;
(3) 程序具有一种层次结构。 注:运用这种编程方法,考虑问题必须先进行整体分析,避免边写边想。
二、自顶向下:
(1) 先设计第一层(即:顶层),然后步步深入,逐层细分,逐步求精,直到整个问题可用程序设计语言明确地描述出来为止。
(2) 步骤: 首先对问题进行仔细分析,确定其输入、输出数据,写出程序运行的主要过程和任务; 然后从大的功能方面把一个问题的解决过程分 成几个问题,每个子问题形成一个模块。
(3) 特点:先整体后局部,先抽象后具体。
三、自底向上:
(1) 即先设计底层,最后设计顶层;
(2) 优点:由表及里、由浅入深地解决问题;
(3) 不足:在逐步细化的过程中可能发现原来的分解细化不够完善;
(4) 注意:该方法主要用于修改、优化或扩充一个程序。
4.例子:求1到n之间的素数。 解:要求1到n之间的素数,程序要做的事就是从1开始依次找,判断是否是素数,是则打印出来,否则继续往下找,直到n为止。于是初步设想成:
begin read(n); number:=2;
while number〈n do
begin
if number是一个素数 then write(number);
number取下一个值;
end;
end.
第二步:细化“number是一个素数”及“number取下一个值”。
(1) 细化“number是一个素数”: “number是一个素数”这是一个布尔值,当number是一个素数时为true,否则为false。细化如下:
k:=2; lim:=number-1; repeat
if nubmer能被k整除 then
prim:=false else begin
k:=k+1;
prim:=true;
end;
until not(prim) or (k达到lim);
继续下一页阅读
本文标签: 青少年信息学计算机 青少年信息学(计算机)竞赛程序设计的基本方法
版权声明:本文标题:青少年信息学计算机,青少年信息学(计算机)竞赛:程序设计的基本方法 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1693583429h230619.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论