20145319 实验一

20145319 实验一 “Java开发环境的熟悉”

程序设计过程

实验内容

  • 编程实现让用户输入整数N,然后输出1~N之间所有的质数

编写代码

  1. 程序的大致设计思路并不难,想找出1~N之间的所有质数只需使用穷举法,一个一个验证1~N之间的每个数是不是质数,如果是输出该整数
  2. 具体思路如下:
  • 首先思考程序最核心的部分,就是判断该数x是否为质数,只需要用for语句,求x(mod i)的值,i为1~x的平方根之间所有的整数,如果所有x(mod i)的值均不为零,则为质数,反之为合数
  • 然后是再使用for语法,对1~N之间所有的整数均进行上述步骤判断,虽然这两部分可以都写在main()方法中,但是因为同时使用两个for语句,在之后程序调试中会带来一定麻烦,所以将第一步构造成函数只在main()中调用
  • 构造函数之后,那么我们如何才能知道函数判断该整数x是否为质数的结果呢?所以,我们要定义一个变量flag来方便判断,并且将函数定义为int,通过return的flag值为0,1来判断该整数是否为质数
  • 当函数核心功能都构思好之后,我们开始来考虑程序一些其他的细节,例如,程序要求让用户来输入整数N,所以我们需要在代码前加上,import java.util.Scanner; 通过建立Scanner实例来完成数字录入
  • 最后就是将想法实现于代码中,并且亲自去运行调试啦

代码:

调试代码

  • 首先是自己输入尽量多,覆盖范围尽量广的正整数N,观察运行结果是否和已知事实相符合
  • 如果结果运行错误,首先回头检查代码中的设计和语法细节是否出了问题
  • 设置断点,逐行运行,理清思路以及每一步的变化并观察其中变化的结果,找出错误部分并改正(因为本次试验较为简单,所以此次试验报告中没有附上断点调试代码截图)
  • 运行结果:

  • 命令行编译与运行结果:

PSP(Personal Software Process)

步骤耗时百分比
需求分析  5min 8
设计 10min  16 
代码实现 20min  33
测试 10min  16 
分析总结 15min  27 

posted on 2016-04-10 20:28  20145319钟轲  阅读(145)  评论(2编辑  收藏  举报