3、止。于是初步设想成: 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
4、if nubmer能被k整除 then prim:=false else begink:=k+1;prim:=true;end; until not(prim) or (k达到lim); (2) 细化“number取下一个值”: number:=number+1; 第三步:细化“number能被k整除”及“k达到lim”。 (1) 细化“number能被k整除”: number mod k=0; (2) 细化“k达到lim”: k<=lim; 第四步:补充完整程序。第五步:从所有的素数除了2之外都是奇数的角度